gpt4 book ai didi

javascript - 调用在 Jquery 中不作为链式函数工作

转载 作者:行者123 更新时间:2023-11-30 00:33:02 26 4
gpt4 key购买 nike

我有以下代码片段:

$('#move').click(function () {
$('#block').animate({
'left': '+=50px'
}, 500);
});

function get_fx() {
var store = console.log($(this).queue('fx').length);
return store;
}

function trigger_it(param) {
$(param).trigger('click');
}

call_it = setInterval(function () {
trigger_it('#move')
},
2000);

Fiddle Here

现在,在 $('#block') 上运行动画函数后,我希望 get_fx() 函数仍然返回动画的数量在 $('#block') 的队列中,所以我在动画函数之后有以下代码行:

.call(this , get_fx())

现在这似乎确实有效,但让我向您展示我在控制台中获得的结果:

0 // 0 is displayed , which i guess is the correct result .. I am not sure . 
TypeError: $(...).animate(...).call is not a function // I get this error , I don't know why .

现在有人可以告诉我为什么会出现该错误吗?我的调用函数是否在执行它应该执行的操作?

EDIT:: 我不想使用动画函数的 callback 选项,而是想使用 call 函数在 get_fx() 上。

最佳答案

    animate() 

功能支持回调函数。你可以利用这个。所以你可以这样使用

        $('#move').click(function(){
$('#block').animate({ 'left' : '+=50px' } , 500, function(){

get_fx();

});

关于javascript - 调用在 Jquery 中不作为链式函数工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28446648/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com