2013-06-17 14 views
50

Devo reindirizzare a URL specifici dopo 5 secondi dopo aver inserito un messaggio di errore. Per prima cosa ho usato Javascript come di seguito.Pagina Reindirizzamento dopo X secondi di attesa tramite JavaScript

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

Ma non è in attesa per 5 secondi. Rispetto a quanto ho cercato su Google, che mi ha fatto sapere che "document.ready()" è invocato quando il documento viene caricato su DOM, non sul browser web.

Di quanto ho usato la funzione window.load() di jQuery, ma ancora non riesco a ottenere ciò che voglio.

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

Qualcuno può, per favore, farmi sapere esattamente come devo fare per aspettare 5 secondi.

+0

Per una soluzione completa: [js redirect] (http://insider.zone/tools/client-side-url-redirect- generatore /) –

risposta

76

Sembra che tu sia quasi arrivato. Prova:

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); 

} 
27

In realtà è necessario passare una funzione all'interno della window.setTimeout() cui si desidera eseguire dopo 5000 millisecondi, in questo modo:

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

Per maggiori informazioni: .setTimeout()

+1

Mi picchia. Il reindirizzamento non attende perché la posizione viene assegnata immediatamente. Deve essere una chiamata di funzione – Cfreak

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

è necessario passare un funzione a setTimeout

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

È possibile utilizzare questa funzione javascript. Qui puoi visualizzare il messaggio di reindirizzamento per l'utente e reindirizzato all'URL specificato.

<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

Usa JavaScript setInterval() metodo per redirect dopo un certo periodo di tempo specificato. Lo script seguente reindirizzerà la pagina dopo 5 secondi.

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

Esempio di script e demo live possono essere trovati da qui - Redirect page after delay using JavaScript

Problemi correlati