Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2012
    Messaggi
    182

    Sistema notifica aggiornamenti

    Spero sia la sezione giusta.

    Vorrei sapere se c'è un sistema, o un sito che offre un "servizio" del genere.

    Ho un sito in altervista, che raccoglie documenti ed appunti per un mio gruppo di studi universitario.

    Vorrei che ogni volta che la pagina viene aggiornata, compaia una "notifica" (sotto forma di testo o immagine) in una parte del sito, e che questa notifica non ricompaia una seconda volta, fino a nuovo aggiornamento.

    Qui ho un codice script che segnala l'ultima volta che la pagina è stata modificata

    codice:
    <SCRIPT LANGUAGE="JavaScript"> function initArray() { this.length = initArray.arguments.length for (var i = 0; i < this.length; i++) this[i+1] = initArray.arguments[i] } var DOWArray = new initArray("Domenica","Lunedi'","Martedi'","Mercoledi'", "Giovedi'","Venerdi'","Sabato"); var MOYArray = new initArray("Gennaio","Febbraio","Marzo","Aprile", "Maggio","Giugno","Luglio","Agosto","Settembre", "Ottobre","Novembre","Dicembre"); var LastModDate = new Date(document.lastModified); document.write("Ultimo inserimento "); document.write(DOWArray[(LastModDate.getDay()+1)],", "); document.write(LastModDate.getDate()," "); document.write(MOYArray[(LastModDate.getMonth()+1)]," "); document.write("."); </SCRIPT>
    Come potete vedere è un codice molto semplice e soprattutto molto utile. Vorrei però modificarlo in modo tale che la "notifica" compaia magari anche con un simbolino e che "scompaia" dopo la prima visualizzazione.. fino a nuovo aggiornamento

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Dubito che sia possibile oltretutto essendo document.lastModified una stringa non puoi confrontarla con la data corrente https://developer.mozilla.org/it/doc...t.lastModified
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    Utente di HTML.it L'avatar di carlomarx
    Registrato dal
    Oct 2009
    Messaggi
    1,669
    codice:
    <!doctype html>
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <title>Esempio</title>
    <script type="text/javascript">
    onload = function () {
    	if (Date.parse(document.lastModified) > parseFloat(document.cookie.replace(/(?:(?:^|.*;\s*)last_modif\s*\=\s*((?:[^;](?!;))*[^;]?).*)|.*/, "$1") || "0")) {
    		document.cookie = "last_modif=" + Date.now() + "; expires=Fri, 31 Dec 9999 23:59:59 GMT; path=" + location.pathname;
    		document.getElementById("avviso").innerHTML = "Ci sono novit\u00E0";
    	}
    };
    </script>
    <style type="text/css">
    #avviso {
    	background-color: red;
    	float: right;
    	width: auto;
    }
    </style>
    </head>
    <body>
    
    <div id="avviso"></div>
    
    
    Testo di esempio</p>
    
    
    Altro testo di esempio</p>
    
    </body>
    </html>
    Tutto ciò che fai con jQuery puoi farlo meglio e con la metà del codice in puro JavaScript.

  4. #4
    Utente di HTML.it
    Registrato dal
    Feb 2012
    Messaggi
    182
    carlo l'ho provato... ma tutto quello che fa è scrivere "Testo di esempio" e "Altro testo di esempio".

  5. #5
    Utente di HTML.it
    Registrato dal
    Feb 2012
    Messaggi
    182
    Rettifico xD Ha funzionato. Hai colto perfettamente nel segno

    Il problema è che per prova ho provato poi a modificare la pagina, ma salvato il codice html con la modifica ed aggiornata la pagina, mi "aggiorna" solo la modifica, mentre l'avviso non ricompare (praticamente compare solo la prima volta che dò vita alla pagina)


    In pratica ho fatto un po' di tentativi:

    l'avviso mi compare solo la prima volta. Se prendo la stessa pagina, la modifico e poi riaggiorno per vedere la modifica e l'avviso, l'avviso non viene mostrato.
    Diversamente se creo un'altra pagina e rincollo lo stesso codice, l'avviso viene mostrato

  6. #6
    Utente di HTML.it L'avatar di carlomarx
    Registrato dal
    Oct 2009
    Messaggi
    1,669
    A me compare tutte le volte che modifico la pagina!

    Il problema molto probabilmente è che stai provando la pagina in locale con un browser WebKit (Chrome, Safari, etc. etc.). O la provi online, oppure usi un browser NON WebKit. I cookies non funzionano in locale su Safari e Chrome!!!
    Tutto ciò che fai con jQuery puoi farlo meglio e con la metà del codice in puro JavaScript.

  7. #7
    Utente di HTML.it L'avatar di carlomarx
    Registrato dal
    Oct 2009
    Messaggi
    1,669
    Dimenticavo&hellip; Se vuoi che l'avviso appaia solo una volta che l'utente abbia già visitato la pagina e che questa sia stata modificata dalla sua ultima visita dovrai modificare un po' il codice. Quest'esempio si comporterà come il precedente eccetto per il fatto che non mostrerà un avviso alla prima visita&hellip;:

    codice:
    <!doctype html>
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <title>Esempio</title>
    <script type="text/javascript">
    onload = function () {
    
    	var
    		nLastVisit = parseFloat(document.cookie.replace(/(?:(?:^|.*;\s*)last_modif\s*\=\s*((?:[^;](?!;))*[^;]?).*)|.*/, "$1")),
    		nLastModif = Date.parse(document.lastModified);
     
    	if (isNaN(nLastVisit) || nLastModif > nLastVisit) {
    		document.cookie = "last_modif=" + Date.now() + "; expires=Fri, 31 Dec 9999 23:59:59 GMT; path=" + location.pathname;
    		if (isFinite(nLastVisit)) {
    			document.getElementById("avviso").innerHTML = "Ci sono novit&amp;agrave;!!!";
    		}
    	}
    
    };
    </script>
    <style type="text/css">
    #avviso {
    	background-color: red;
    	float: right;
    	width: auto;
    }
    </style>
    </head>
    <body>
    
    <div id="avviso"></div>
    
    
    Testo di esempio</p>
    
    
    Altro testo di esempio</p>
    
    </body>
    </html>
    Tutto ciò che fai con jQuery puoi farlo meglio e con la metà del codice in puro JavaScript.

  8. #8
    Utente di HTML.it
    Registrato dal
    Feb 2012
    Messaggi
    182
    semplicemente GENIALE grazie davvero

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 © 2026 vBulletin Solutions, Inc. All rights reserved.