我想知道是否有可能创建一个不会使浏览器崩溃的无限循环
这是我到目前为止所拥有的(这显然会使浏览器崩溃):
var i = 0;
while (i < 1){
$('.block').each(function(index) {
$(this).css('left', $(this).position().left - 10)
if (($(this).position().left) < ($(window).width() * 0.4)) {
$(this).html('<p>Test 1</p>');
$(this).animate({
width: "500px",
height: "500px",
}, 500 );
}else if (($(this).position().left) < ($(window).width() * 0.2)) {
$(this).html('<p>Test 1</p>');
$(this).animate({
width: "600px",
height: "600px",
}, 500 );
}
});
}
任何提示都会很棒!
最佳答案
尝试使用 window.setInterval() 之类的代码如下(它将以 3 秒间隔执行):
function LoopForever() {
$('.block').each(function(index) {
$(this).css('left', $(this).position().left - 10)
if (($(this).position().left) < ($(window).width() * 0.4)) {
$(this).html('<p>Test 1</p>');
$(this).animate({
width: "500px",
height: "500px",
}, 500 );
}else if (($(this).position().left) < ($(window).width() * 0.2)) {
$(this).html('<p>Test 1</p>');
$(this).animate({
width: "600px",
height: "600px",
}, 500 );
}
});
}
var interval = self.setInterval(function(){LoopForever()},3000);
//call code bllow to stop interval
//window.clearInterval(interval);
注意:1000 = 1 秒;
关于jQuery:不会使浏览器崩溃的无限循环,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13020630/