javascript - 将参数传递给动画回调 jQuery?

标签 javascript jquery animation mobile callback

我设计了一个 fiddle ,类似于我在制作 jQuery 应用程序时遇到的问题。我有多个按钮执行一个 Action ,并且必须在动画完成后更改标题。标题取决于按下的按钮。由于您无法将参数传递给回调,因此我采用了传递全局变量的方法。有更合适的方法吗?

http://jsfiddle.net/XDdEV/

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/

相关文章:

javascript - JS 中 "this"的 jQuery 等价物是什么?

javascript - 为什么这个 jQuery 动画在 Firefox 4/5 上这么慢?

css - 如何同时为具有一个计时功能的 translateX 添加转换和为具有另一个计时功能的 translateY 添加转换?

JavaScript - 使用数组检查字符串

javascript - 我的脚本完美运行,直到我将其包装在 if (screen.width < 980) { } 语句中以检查屏幕尺寸

javascript - 滚动然后固定侧边栏内容在向上滚动时消失

javascript - 如何在 expressjs 上调用 ajax 后用 jquery 渲染部分 ejs 模板

iphone - Mapkit 缩放动画

ios - 如何根据具有打字机效果的 UILabel 设置单元格的高度

javascript - 为什么 Transform.rotateZ 不顺时针旋转我的 Surface