实际上我的脚本是
var i=0;
while(i < folder.length)
{
$("#hide_message").load('/fdc.php?path='+encodeURIComponent(folder[i]) );
//Delay After 10 Sec
$("#hide_message").load('/member.php?path='+encodeURIComponent(folder[i]) );
//Delay After 10 Sec
i++;
}
这是否可以延迟jquery中的每一行。
答案 0 :(得分:4)
答案 1 :(得分:2)
setTimeout(function(){
//your action code
},1000*10);
试试这个
答案 2 :(得分:1)
当然有可能。
查看jquery API文档。
var i=0;
while(i < folder.length)
{
$("#hide_message").load('/fdc.php?path='+encodeURIComponent(folder[i]) );
//Delay After 10 Sec
$("#hide_message").delay(1000).load('/member.php?path='+encodeURIComponent(folder[i]) );
//Delay After 10 Sec
i++;
}
你可以试试这个。但我没有测试它!
.delay()方法最适合在排队的jQuery之间延迟 效果。因为它是有限的 - 例如,它没有提供一种方法 取消延迟-.delay()不是JavaScript本机的替代品 setTimeout函数,可能更适合某些用途 例。
答案 3 :(得分:1)
您可能想要这样做:
var i = 0;
while(i < folder.length) {
var index = i;
setTimeout(function() {
$("#hide_message").load('/fdc.php?path=' + encodeURIComponent(folder[index]));
}, i * 1000);
setTimeout(function(){
$("#hide_message").load('/member.php?path=' + encodeURIComponent(folder[index]));
}, (i + 1) * 1000);
i++;
}
使用这种方式,这些AJAX加载都不重合。
注意:您不应将i
作为索引传递给folder
数组。您应该声明一个局部变量并传递它。 var index = i;
。为什么会出现JavaScript闭包的一些副作用。