Javascript setTimeout不使用jquery
我有一个jquery扩展函数,它工作得很好,但是当我将它传递给setTimout时,它不会等待指定的时间段,而是直接运行Javascript setTimeout不使用jquery,javascript,jquery,settimeout,Javascript,Jquery,Settimeout,我有一个jquery扩展函数,它工作得很好,但是当我将它传递给setTimout时,它不会等待指定的时间段,而是直接运行 jQuery(document).ready(function($) { setTimeout($.mainmenuslider({ trigger:'close' }),6000); }); 有什么想法吗?当您试图设置稍后发生的超时时,您正在调用该函数。相反: jQuery(function($) { setTimeout(function
jQuery(document).ready(function($) {
setTimeout($.mainmenuslider({
trigger:'close'
}),6000);
});
有什么想法吗?当您试图设置稍后发生的超时时,您正在调用该函数。相反:
jQuery(function($) {
setTimeout(function() {
$.mainmenuslider({trigger:'close'});
}, 6000);
});
您需要传递一个匿名方法来执行所需操作,如下所示:
jQuery(function($) {
setTimeout(function() {
$.mainmenuslider({
trigger:'close'
});
}, 6000);
});
否则,您将试图传递函数的结果(使其立即执行,以后不再运行)。试试这个
jQuery(document).ready(function($) {
setTimeout("$.mainmenuslider({
trigger:'close'
})",6000);
});
使用setTimeout()时,请始终尝试指定需要在引号中调用的操作
例:
这实际上不是一个好主意。查看其他答案,以获得正确方法的示例。行前4个空格将其格式化为代码。选择一个块并点击
ctr-k
来执行此操作。刚刚保存了我的屁股!谢谢:)正在追查一个赛况,不明白为什么我不能摆脱它
setTimeout("call_this_function()", 4000);