我设计了一个 fiddle ,类似于我在制作 jQuery 应用程序时遇到的问题。我有多个按钮执行一个 Action ,并且必须在动画完成后更改标题。标题取决于按下的按钮。由于您无法将参数传递给回调,因此我采用了传递全局变量的方法。有更合适的方法吗?
var heading = '';
function headingChanger(e) {
$("#heading").html(heading);
}
$("#one").click(function (e) {
heading = 'HEADING 1'
$("#slider").animate({
'margin-left' : '200px'
},1000,'linear',headingChanger);
});
$("#two").click(function (e) {
heading = 'HEADING 2'
$("#slider").animate({
'margin-left' : '0'
},1000,'linear',headingChanger);
});
最佳答案
你可以这样调用这个函数:
$("#two").click(function (e) {
heading = 'HEADING 2'
$("#slider").animate({
'margin-left' : '0'
},1000,'linear',function() { headingChanger(heading) });
});
这将使 headingChanger 在回调时被评估。
关于javascript - 将参数传递给动画回调 jQuery?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11693607/