我在我的脚本中使用jquery,在此我使用该函数中的setTimeout()调用一个函数。我也使用setTimeout()在document.ready(function(){})中调用该函数;
当我运行此脚本时,我收到弹出错误消息“此页面上的脚本可能正忙,或者它可能已停止响应。您可以立即停止脚本,或者您可以继续查看脚本是否完成“
我将这些功能用作
$(document).ready(function(){
setTimeout( 'reloadlink()', 1000 );
setTimeout( 'randimage()', 2000 );
});
function reloadlink(){
$.ajax({
type: "POST",
url: "<?php echo base_url();?>index.php/affliate/randomafflinks",
success: function(msg){
$('#rlinks').html(msg);
setTimeout( 'reloadlink()', 2000 );
}
});
}
function randimage(){
$.ajax({
type: "POST",
url: "<?php echo base_url();?>index.php/affliate/randimage",
success: function(msg){
$('#affimg').html(msg);
setTimeout( 'randimage()', 2000 );
}
});
}
答案 0 :(得分:0)
如果你将指针传递给你的函数而不是setTimeout中的字符串会更好。尝试调用这样的函数
setTimeout( reloadlink, 1000 );
setTimeout( randimage, 2000 );
或
setTimeout( function(){ reloadlink(); }, 1000 );
setTimeout( function(){ randimage(); }, 2000 );
更优选第一种变体。无论如何,当你用一段代码调用setTimeout时,解释器会创建一个匿名函数 浏览器还存储指向创建超时的指针,最好将其存储在某处并使用clearTimeout清除。如果不清除,您将浪费浏览器的资源。