2013-03-27 19 views
7

Desidero reindirizzare l'utente a index.php in 5 secondi, ma mi reindirizza immediatamente. Non voglio usare jQuery in questo semplice codice.setTimeout e window.location (location.href) non funzionano

<script>    
setTimeout(function(){location.href="index.php", 5000});   
</script> 
+9

Spostare ', 5000' dopo la' '} ... –

+2

@RobW - Che suona come una risposta! – adeneo

+0

Gesù questo è stato stupido da parte mia @Rob W lo scrivo come risposta alla mia domanda così posso contrassegnarlo come soluzione – FosAvance

risposta

23

Questo è il modo giusto ...

setTimeout(function(){location.href="index.php"} , 5000); 

È possibile controllare la documentazione qui:

https://developer.mozilla.org/en/docs/DOM/window.setTimeout

Sintassi:

var timeoutID = window.setTimeout(func, [delay, param1, param2, ...]); 
var timeoutID = window.setTimeout(code, [delay]); 

Esempio:

WriteDatePlease(); 
 
setTimeout(function(){WriteDatePlease();} , 5000); 
 

 

 
function WriteDatePlease(){ 
 
    var currentDate = new Date() 
 
    var dateAndTime = "Last Sync: " + currentDate.getDate() + "/" 
 
       + (currentDate.getMonth()+1) + "/" 
 
       + currentDate.getFullYear() + " @ " 
 
       + currentDate.getHours() + ":" 
 
       + currentDate.getMinutes() + ":" 
 
       + currentDate.getSeconds(); 
 
    $('.result').append("<p>" + dateAndTime + "</p>"); 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
 
<div class="result"></div>

2

Questo funziona anche: setTimeout ("window.location = 'index.php'", 5000);

1

So che questo thread è già stato risolto e le sue un po 'di 2 anni più tardi che io sia venuto attraversavano questo, io personalmente appena usato l'esempio di risposta di Joan e modificato per funzionare esattamente come ho bisogno come il location.href non reindirizzerà la pagina TOP o Parent quando viene chiamata all'interno di un iframe.

Quindi, per chiunque cerchi un modo per reindirizzare dopo 5 secondi, ma all'interno di un iframe e per reindirizzare la pagina TOP/padre, ecco come ho raggiunto quello basato sulla risposta di Joan alla domanda originale.

<script type="text/javascript"> 
    setTimeout(function(){window.top.location="index.php"} , 5000); 
    </script> 

E se si voleva chiamare questo utilizzando PHP come ho personalmente fatto fare ecco come si può usare il comando echo per reindirizzare l'utente dopo 5 secondi.

echo '<script type="text/javascript">setTimeout(function(){window.top.location="index.php"} , 5000);</script>'; 

Spero che questo aiuti chiunque altro a cercare la stessa soluzione.

Grazie