Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    Ricaricare pagina una sola volta dopo

    Salve ,sto cercando in javascript di far riaggiornare la pagina che sto visitando una sola volta dopo circa 30 secondi la pagina ha finito di caricare .Sto usando questo codice

    codice:
    <script type="text/javascript">
    function redirect() {
      //Qui mettiamo il link della pagina corrente
      location.href = "URL DA AGGIORNARE";
    }
    //Ora puntiamo il timer a 10 secondi prima di avviare redirect()...
    window.setTimeout("redirect()", 25000);
    
    
    </script>
    Funziona solo che ripete la funzione ogni 25 secondi ,anel mio caso deve ripeterla solo una volta, come posso fare ?

    Grazie

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Prova cosi
    codice:
    <script type="text/javascript">
    var redir = false;
    function redirect() {
      //Qui mettiamo il link della pagina corrente
      location.href = "URL DA AGGIORNARE";
    redir = true;
    }
    //Ora puntiamo il timer a 10 secondi prima di avviare redirect()...
    if(!redir) window.setTimeout("redirect()", 25000);
    </script>
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    Originariamente inviato da cavicchiandrea
    Prova cosi
    codice:
    <script type="text/javascript">
    var redir = false;
    function redirect() {
      //Qui mettiamo il link della pagina corrente
      location.href = "URL DA AGGIORNARE";
    redir = true;
    }
    //Ora puntiamo il timer a 10 secondi prima di avviare redirect()...
    if(!redir) window.setTimeout("redirect()", 25000);
    </script>
    Continua ad aggiornare la pagina ogni 25 secondi, non va bene

  4. #4
    Utente di HTML.it L'avatar di carlomarx
    Registrato dal
    Oct 2009
    Messaggi
    1,669
    codice:
    <script type="text/javascript">
    onload = function () {
    	if (!/(?:^|;)\s*reloaded\s*\=\s*true\s*(?:;|$)/.test(document.cookie)) {
    		setTimeout(function () { location.reload(true); }, 25e3);
    		document.cookie = "reloaded=true; expires=Tue, 19 Jan 2038 03:14:07 GMT; path=" + location.pathname;
    	}
    };
    </script>
    Tutto ciò che fai con jQuery puoi farlo meglio e con la metà del codice in puro JavaScript.

  5. #5
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Mi era sfuggito questo commento Qui mettiamo il link della pagina corrente e ricaricando la pagina il mio concetto non va più bene, ma ritengo la soluzione gusta quella di Carlo.
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  6. #6
    Utente di HTML.it L'avatar di carlomarx
    Registrato dal
    Oct 2009
    Messaggi
    1,669
    Considera che la soluzione che ho postato io ti ricaricherà la pagina una e una sola volta: se ti ci colleghi domani alle 12:45:00, la pagina sarà ricaricata alle 12:45:25; ma se poi accedi nuovamente, ad esempio alle 15:23:19, non avverrà più il refresh. Questo fin quando l'utente non avrà svuotato la cache del browser. Nel caso in cui tu voglia ricaricare la pagina 25 secondi dopo per ogni accesso ti conviene manipolare l'URL&hellip;:

    codice:
    <script type="text/javascript">
    onload = function () {
    	var bSearch = location.search.length > 1, sPrefix = bSearch ? "&" : "?", oGetVars = {};
    
    	if (bSearch) {
    		for (var aItKey, nIdx = 0, aCouples = location.search.substr(1).split("&"); nIdx < aCouples.length; nIdx++) {
    			aItKey = aCouples[nIdx].split("=");
    			oGetVars[unescape(aItKey[0])] = aItKey.length > 1 ? unescape(aItKey[1]) : "";
    		}
    	}
    
    	oGetVars.hasOwnProperty("reloaded") || setTimeout(function () { location.assign(location.href + sPrefix + "reloaded=true"); }, 25e3);
    };
    </script>
    Tutto ciò che fai con jQuery puoi farlo meglio e con la metà del codice in puro JavaScript.

  7. #7
    Originariamente inviato da carlomarx
    Considera che la soluzione che ho postato io ti ricaricherà la pagina una e una sola volta: se ti ci colleghi domani alle 12:45:00, la pagina sarà ricaricata alle 12:45:25; ma se poi accedi nuovamente, ad esempio alle 15:23:19, non avverrà più il refresh. Questo fin quando l'utente non avrà svuotato la cache del browser. Nel caso in cui tu voglia ricaricare la pagina 25 secondi dopo per ogni accesso ti conviene manipolare l'URL&hellip;:

    codice:
    <script type="text/javascript">
    onload = function () {
    	var bSearch = location.search.length > 1, sPrefix = bSearch ? "&" : "?", oGetVars = {};
    
    	if (bSearch) {
    		for (var aItKey, nIdx = 0, aCouples = location.search.substr(1).split("&"); nIdx < aCouples.length; nIdx++) {
    			aItKey = aCouples[nIdx].split("=");
    			oGetVars[unescape(aItKey[0])] = aItKey.length > 1 ? unescape(aItKey[1]) : "";
    		}
    	}
    
    	oGetVars.hasOwnProperty("reloaded") || setTimeout(function () { location.assign(location.href + sPrefix + "reloaded=true"); }, 25e3);
    };
    </script>

    Funziona alla perfezione ,grazie Carlo

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.