-
Refresh Iframe
Salve, ho una pagina "index" con menu e relativi link.
All'interno della pagina "index" ho messo un frame dove visualizzo diverse pagine a seconda dei link.
Vorrei chiedere: esiste uno script da inserire nella pagina "index" che faccia il refresh automatico ogni tot secondi solamente delle pagine contenute nel frame?
Grazie.
-
-
Grazie per il link, ma vorrei fosse la pagina index ad eseguire il refresh del frame...Ho provato alcuni script trovati con google, ma funzionano solo con Firefox, o meglio funzionano anche con IE, ma se nel mio frame è presente una pagina (pag1), e nello stesso frame vado a visualizzarne un'altra(pag2), quando la pagina index esegue il refresh, nel frame mi ritorna la pag1.
Questo è il link del mio sito http://meteomasera.altervista.org/
-
Puoi usare un metatag all'interno della pagina frame cosìcché si aggiorni dopo un po' di tempo
Codice HTML:
<meta http-equiv="refresh" content="3; url=http://tuosito.altervista.org/">
al posto di 3 metti i secondi ed è fatta.
Ciao!
-
Grazie ilmicaos per la risposta, ma è esttamente il contrario, vorrei che fosse la pagina principale "index.htm" che esegue il refresh del frame...:wink:
-
che io sappia non c'è un modo, potresti spiegare per quale motivo è necessario il refresh dall'index? Così forse posso aiutarti
-
Perchè il frame a volte fa riferimento a link di immagini e non a pagine web,queste immagini sono aggiornate regolarmente tramite FTP, e per visualizzarle aggiornate nel frame dovrei fare in modo che il frame stesso si aggiorni.
Questo script funziona su Firefox, ma non capisco perchè non va con IE :???:
<script language="JavaScript">
//configure refresh interval (in seconds)
var countDownInterval=10;
//configure width of displayed text, in px (applicable only in NS4)
var c_reloadwidth=200
</script>
<ilayer id="c_reload" width=&{c_reloadwidth}; ><layer id="c_reload2" width=&{c_reloadwidth}; left=0 top=0></layer></ilayer>
<script>
var countDownTime=countDownInterval+1;
function countDown(){
countDownTime--;
if (countDownTime <=0){
countDownTime=countDownInterval;
clearTimeout(counter)
window.location.reload()
return
}
if (document.all) //if IE 4+
document.all.countDownText.innerText = countDownTime+" ";
else if (document.getElementById) //else if NS6+
document.getElementById("countDownText").innerHTML =countDownTime+" "
else if (document.layers){ //CHANGE TEXT BELOW TO YOUR OWN
document.c_reload.document.c_reload2.document.writ e('Next <a href="javascript:window.location.reload()">refresh </a> in <b id="countDownText">'+countDownTime+' </b> seconds')
document.c_reload.document.c_reload2.document.clos e()
}
counter=setTimeout("countDown()", 1000);
}
function startit(){
if (document.all||document.getElementById) //CHANGE TEXT BELOW TO YOUR OWN
document.write('Next <a href="javascript:window.location.reload()">refresh </a> in <b id="countDownText">'+countDownTime+' </b> seconds')
countDown()
}
if (document.all||document.getElementById)
startit()
else
window.onload=startit
</script>
-
Non sono molto ferrato in javascript, cos'è che non va su IE? a me si aggiorna periodicamente sia FireFox che IE, stessa cosa con Chrome, dov'è il problema?
-
L'ho già scritto qualche messaggio più su, quando su IE lo script fa il refresh mi ritorna alla pagina con il frame iniziale, cosa che non avviene con Firefox
http://meteomasera.altervista.org/ Qui c'è la pagina principale con il frame iniziale. Vai sul menù in alto "tutti i dati meteo -> grafici -> grafici giornalieri -> vento.
Attendi il refresh e vedrai che ritorna alla pagina iniziale.:crycry:
Ciao
-
Forse ci sono degli errori di ortografia nello script....mi sembra di vedere degli spazi(che non dovrebbero essserci) e chiusure /> che mancano....verifica....!?
mancano anche i ;
Prova così:
Codice HTML:
<script language="JavaScript">
//configure refresh interval (in seconds)
var countDownInterval=10;
//configure width of displayed text, in px (applicable only in NS4)
var c_reloadwidth=200;
</script>
<ilayer id="c_reload" width=&{c_reloadwidth};><layer id="c_reload2" width=&{c_reloadwidth}; left=0 top=0></layer></ilayer>
<script>
var countDownTime=countDownInterval+1;
function countDown()
{
countDownTime--;
if (countDownTime <=0)
{
countDownTime=countDownInterval;
clearTimeout(counter);
window.location.reload();
return;
}
if (document.all) //if IE 4+
document.all.countDownText.innerText = countDownTime+" ";
else if (document.getElementById) //else if NS6+
document.getElementById("countDownText").innerHTML =countDownTime+" ";
else if (document.layers)
{ //CHANGE TEXT BELOW TO YOUR OWN
document.c_reload.document.c_reload2.document.write('Next <a href="javascript:window.location.reload()">refresh </a> in <b id="countDownText">'+countDownTime+' </b> seconds');
document.c_reload.document.c_reload2.document.close();
}
counter=setTimeout("countDown()", 1000);
}
function startit()
{
if (document.all||document.getElementById) //CHANGE TEXT BELOW TO YOUR OWN
document.write('Next <a href="javascript:window.location.reload()">refresh </a> in <b id="countDownText">'+countDownTime+' </b> seconds');
countDown();
}
if (document.all||document.getElementById)
startit();
else
window.onload=startit;
</script>
:roll:
-
Grazie Eurosalute per la correzzione dello script (non sono esperto):wink:
Purtroppo non cambia nulla, rimane come prima.:crycry:
Va beh pazienza, mi dovrò rassegnare , troverò un altro sistema, grazie lo stesso a tutti per l'aiuto:razz: