使用JavaScript等待X秒后的页面重定向

时间:2013-06-17 14:37:11

标签: javascript jquery

我需要在输入错误消息后5秒后重定向到特定网址。首先,我使用了以下Javascript。

document.ready(window.setTimeout(location.href = "https://www.google.co.in",5000));

但它不会等待5秒钟。比我在谷歌搜索问题而不是知道在DOM上加载文档时调用“document.ready()”,而不是在网络浏览器上。

我已经使用了jQuery的window.load()函数,但我仍然没有得到我想要的东西。

$(window).load(function() {
               window.setTimeout(window.location.href = "https://www.google.co.in",5000);
            });

任何人都可以让我知道我需要做什么才能等待5秒钟。

8 个答案:

答案 0 :(得分:102)

看起来你几乎就在那里。尝试:

if(error == true){

    // Your application has indicated there's an error
    window.setTimeout(function(){

        // Move to a new location or you can do something else
        window.location.href = "https://www.google.co.in";

    }, 5000);

}

答案 1 :(得分:30)

实际上你需要在5000毫秒之后传递一个你要执行的window.setTimeout()内的函数,如下所示:

$(document).ready(function () {
    // Handler for .ready() called.
    window.setTimeout(function () {
        location.href = "https://www.google.co.in";
    }, 5000);
});

更多信息:.setTimeout()

答案 2 :(得分:23)

您可以使用此JavaScript函数。在这里,您可以向用户显示重定向消息并重定向到给定的URL。

<script type="text/javascript">   
    function Redirect() 
    {  
        window.location="http://www.newpage.com"; 
    } 
    document.write("You will be redirected to a new page in 5 seconds"); 
    setTimeout('Redirect()', 5000);   
</script>

答案 3 :(得分:9)

您需要将函数传递给setTimeout

$(window).load(function () {
    window.setTimeout(function () {
        window.location.href = "https://www.google.co.in";
    }, 5000)
});

答案 4 :(得分:6)

$(document).ready(function() {
    window.setTimeout(function(){window.location.href = "https://www.google.co.in"},5000);
});

答案 5 :(得分:5)

使用JavaScript setInterval()方法在指定时间后重定向页面。以下脚本将在5秒后重定向页面。

var count = 5;
setInterval(function(){
    count--;
    document.getElementById('countDown').innerHTML = count;
    if (count == 0) {
        window.location = 'https://www.google.com'; 
    }
},1000);

可以在此处找到示例脚本和实时演示 - Redirect page after delay using JavaScript

答案 6 :(得分:1)

setTimeout('Redirect()', 1000);
function Redirect() 
{  
    window.location="https://stackoverflow.com"; 
} 

// document.write(“您将在1000-> 1秒,2000-> 2秒内重定向到新页面”);

答案 7 :(得分:0)

<script type="text/javascript">
      function idleTimer() {
    var t;
    //window.onload = resetTimer;
    window.onmousemove = resetTimer; // catches mouse movements
    window.onmousedown = resetTimer; // catches mouse movements
    window.onclick = resetTimer;     // catches mouse clicks
    window.onscroll = resetTimer;    // catches scrolling
    window.onkeypress = resetTimer;  //catches keyboard actions

    function logout() {
        window.location.href = 'logout.php';  //Adapt to actual logout script
    }

   function reload() {
          window.location = self.location.href;  //Reloads the current page
   }

   function resetTimer() {
        clearTimeout(t);
        t = setTimeout(logout, 1800000);  // time is in milliseconds (1000 is 1 second)
        t= setTimeout(reload, 300000);  // time is in milliseconds (1000 is 1 second)
    }
}
idleTimer();
        </script>