打开新窗口的时间间隔为3秒

Javascript: Opening new windows interval of 3 seconds

本文关键字:时间 3秒 新窗口 窗口      更新时间:2023-09-26

这是我的html代码:

 <!DOCTYPE html>
 <html lang="en">
 <head>
   <meta charset="utf-8">
   <title>Something</title>
 </head>
 <body>
   <a href="http://jquery.com/">Try Me!</a>
   <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.5/jquery.min.js"></script>
   <script>
$("a").click(function(event){
for(id=0;id<=10;){
id++;
     setTimeout(function(){window.open("http://www.mysite.com/characterID="+id,"", "win1", "width=100,height=100,resizable");}, 3000);
   }
event.preventDefault();
});
   </script>
 </body>
 </html>

当我点击"试试我!"它会在3秒后打开我需要的窗口。但是我想打开第一个窗口,等待3秒然后打开第二个窗口,等待3秒然后打开第三个窗口。

İs it possible?

谢谢。

使用setInterval代替setTimeout

请注意我是如何将超时乘以所处的迭代次数的。还要注意for循环的语法差异:

$("a").click(function(event){
    for(i = 0; i< 10; i++)
        setTimeout(function(){window.open("http://www.mysite.com/characterID="+id,"", "win1", "width=100,height=100,resizable");}, 3000 * i);
    }
    event.preventDefault();
});
$("a").click(function(event){
  for(id=0;id<=10;id++){
    var local_id = id;
    setTimeout(function() {
      window.open("http://www.mysite.com/characterID="+local_id,"", "win"+local_id, "width=100,height=100,resizable");
      }, 3000*id);
   }
   event.preventDefault();
});

将超时时间乘以id,并在下一个窗口后3秒打开每个窗口