2011-11-21 72 views
0

下面的代码,我想倒计时,计时器到达00:00后,它将改变窗口的位置。所有的工作都在这个阶段。我的问题是如何在窗口位置发生变化后再次重复此过程?我将用这个扩展名在后台运行。如何调整我的javascript倒计时重复执行后再次

var sec = 5; // set the seconds 
var min = 10; // set the minutes 

function countDown() { 

    sec--; 
    if (sec == -1) { 
     sec = 59; 
     min = min - 1; 
    } else { 
     min = min; 
    } 
    if (sec <= 9) { 
     sec = "0" + sec; 
    } 
    time = (min <= 9 ? "0" + min : min) + " min and " + sec + " sec "; 
    document.getElementById('theTime').innerHTML = time; 
    SD = window.setTimeout("countDown();", 1000); 
    if (min == '00' && sec == '00') { 
     sec = "00"; 
     window.clearTimeout(SD); 
     window.location = 'http://mywebsite.com'; 
    } 

} 

window.addEventListener("load", countDown, false); 
+0

你能澄清一下吗?你也控制网站mywebsite.com – jottos

+0

@ jottos:这有什么不同?所有作者想要做的是重定向到该网站。 – Jordan

+0

@jordan如果你不控制目标页面,那么在改变当前的window.location之后没有办法再次设置定时器,如果你确实控制了目标页面,那么你编写代码来重新建立定时器或者与之协调一个扩展 – jottos

回答

1
if(min==0 && sec=='00') 

你分钟为整数,而不是一个串( '00')。您只将它显示为一个字符串。

0

您将不得不将倒计时代码注入加载的页面。我不确定扩展程序是如何工作的,所以我无法帮助你。

更简单的方法是将目标页面放入,然后改变src的属性。您可以使iframe成为整个窗口的大小,因此看起来很正常。唯一的问题是,你将失去对地址栏的控制权(它不会改变为你设置的任何内容src

+0