Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
// Recupera i dati
alert("Ciao, " + localStorage.getItem("nome_nome"));
} altro {
alert("Spiacenti, il tuo browser non supporta l'archiviazione locale.");
}
</script></code></pre><pre class="syntax-highlighter line-numbers"><code
class="language-markup"><script>
// Controlla se l'oggetto sessionStorage esiste
if(sessionStorage) {
// Immagazzina dati
sessionStorage.setItem("cognome", "Parker");
// Recupera i dati
alert("Ciao, " + localStorage.getItem("first_name") + " " +
sessionStorage.getItem("last_name"));
} altro {
alert("Spiacenti, il tuo browser non supporta la memorizzazione delle
sessioni.");
}
</script></code></pre><p class="summary">In questo tutorial imparerai come
utilizzare la funzione di archiviazione Web HTML5 per archiviare i dati sul
browser dell'utente.</p><p>Gli HTML5 La funzione di web storage consente di
memorizzare alcune informazioni localmente sul computer dell'utente, in modo
simile ai cookie, ma è più veloce e molto migliore dei cookie. Tuttavia,
l'archiviazione web non è più sicura dei cookie. Consulta il tutorial sui <a
href="/php-tutorial/php-cookies.php">cookie PHP</a> per saperne di più sui
cookie.</p><p>Le informazioni memorizzate nella memoria web non sono non vengono
inviati al server web a differenza dei cookie in cui i dati vengono inviati al
server con ogni richiesta. Inoltre, laddove i cookie consentono di memorizzare
una piccola quantità di dati (quasi 4 KB), l'archiviazione web consente di
archiviare fino a 5 MB di dati.</p><p>Esistono due tipi di archiviazione web,
che differiscono per portata e lifetime:</p><p>Come affermato in precedenza,
l'oggetto localStorage memorizza i dati senza data di scadenza. Ogni pezzo di
dati è memorizzato in una coppia chiave/valore. La chiave identifica il nome
dell'informazione (come 'first_name') e il valore è il valore associato a quella
chiave (diciamo 'Peter'). Ecco un esempio:</p><p>Il codice JavaScript sopra
riportato ha il seguente significato:</p><p>Puoi anche rimuovere un particolare
elemento dalla memoria, se esiste, passando il nome della chiave al <code
>removeItem()</code>, come
<code>localStorage.removeItem("first_name")</code>.</p><p>Tuttavia, se vuoi
rimuovere l'intera memoria usa il <code>clear ()</code>, come
<code>localStorage.clear()</code>. Il metodo <code>clear()</code> non accetta
argomenti e semplicemente cancella tutte le coppie chiave/valore da localStorage
in una sola volta, quindi rifletti attentamente prima di usarlo.</p><p>Il
<code>sessionStorage< L'oggetto /code> funziona allo stesso modo di
<code>localStorage</code>, tranne per il fatto che memorizza i dati solo per una
sessione, ovvero i dati rimangono finché l'utente non chiude quella finestra o
scheda.</p><p>Andiamo prova il seguente esempio per capire come funziona
sostanzialmente:</p>
CACHE:
# pagine
indice.html
# immagini
/favicon.ico
immagini/logo.png
RETE:
login.php
RICADERCI:
/ /offline.html</code></pre><pre class="syntax-highlighter line-numbers"><code
class="language-markup"><!DOCTYPE html>
<html lang="it" manifest="esempio.appcache">
<testa>
<title>Uso della cache dell'applicazione</title>
</testa>
<corpo>
<!--Il contenuto del documento verrà inserito qui-->
</corpo>
</html></code></pre><p class="summary">In questo tutorial imparerai come
creare applicazioni offline con la funzione di memorizzazione nella cache
HTML5.</p><p>In genere la maggior parte delle applicazioni basate sul Web
funzionerà solo se sei online. Ma HTML5 introduce un meccanismo di cache
dell'applicazione che consente al browser di salvare automaticamente il file
HTML e tutte le altre risorse necessarie per visualizzarlo correttamente sulla
macchina locale, in modo che il browser possa ancora accedere alla pagina Web e
alle sue risorse senza una connessione Internet .</p><p>Ecco alcuni vantaggi
dell'utilizzo della funzione di cache dell'applicazione HTML5:</p><p>Per
memorizzare nella cache i file per l'utilizzo offline, è necessario completare i
seguenti passaggi:</p><p> Un manifest è un file di testo speciale che indica ai
browser quali file archiviare, quali file non archiviare e quali file sostituire
con qualcos'altro. Il file manifest inizia sempre con le parole <code>CACHE
MANIFEST</code> (in maiuscolo). Ecco un esempio di un semplice file
manifest:</p><p>Potresti pensare a cosa fosse quel codice. OK, entriamo subito
nel merito. Un file manifest può avere tre sezioni distinte: CACHE, NETWORK e
FALLBACK.</p><p><strong>Avviso:</strong> non specificare il file manifest stesso
nel file manifest della cache, altrimenti sarà quasi impossibile informare il
browser che è disponibile un nuovo manifest.</p><p>Dopo la creazione, carica il
file manifest della cache sul server web — assicurati che il server web sia
configurato per servire i file manifest con il tipo MIME <code> text/cache-
manifest</code>.</p><p>Ora per rendere effettivo il tuo cache manifest, devi
abilitarlo nelle tue pagine web, aggiungendo l'attributo manifest alla radice <a
href="/html -reference/html-html-tag.php"><code><html></code></a>
elemento, come mostrato di seguito:</p>
funzione startWorker() {
// Inizializza web worker
lavoratore = nuovo lavoratore("lavoratore.js");
// Dì al lavoratore di iniziare
lavoratore.postMessage("inizio");
}
funzione aggiornamento(evento) {
// Aggiorna la pagina con il messaggio corrente del lavoratore
document.getElementById("result").innerHTML = event.data;
}
funzione stopWorker() {
// Ferma il lavoratore
lavoratore.terminate();
}
</copione>
</testa>
<corpo>
<h1>Demo Web Worker</h1>
<pulsante onclick="startWorker();" type="button">Avvia web
worker</button>
<button type="button" onclick="stopWorker();">Arresta web
worker</button>
<div id="risultato">
<!--I messaggi ricevuti verranno inseriti qui-->
</div>
</corpo>
</html></code></pre><p class="summary">In questo tutorial imparerai come
utilizzare il web worker HTML5 per eseguire il codice JavaScript in
background.</p><p>Se lo desideri provare a svolgere un'attività intensiva con
JavaScript che richiede tempo e calcoli pesanti, il browser bloccherà la pagina
Web e impedirà all'utente di fare qualsiasi cosa fino al completamento del
lavoro. Succede perché il codice JavaScript viene sempre eseguito in primo
piano.</p><p>HTML5 introduce una nuova tecnologia chiamata <em>web worker</em>
specificamente progettata per eseguire il lavoro in background indipendentemente
da altri script dell'interfaccia utente, senza influenzando le prestazioni della
pagina. A differenza delle normali operazioni JavaScript, i web worker non
interrompono l'utente e la pagina web rimane reattiva perché eseguono le
attività in background.</p><p>L'uso più semplice dei web worker è per eseguire
un'attività che richiede tempo . Quindi qui creeremo una semplice attività
JavaScript che conta da zero a 100.000.</p><p>Creiamo un file JavaScript esterno
chiamato "worker.js" e digitiamo il seguente codice.</p><p> Ora che abbiamo
creato il nostro file web worker. In questa sezione avvieremo il web worker da
un documento HTML che esegue il codice all'interno del file denominato
"worker.js" in background e visualizza progressivamente il risultato sulla
pagina web. Vediamo come funziona:</p><p>Il codice JavaScript nell'esempio
precedente ha il seguente significato:</p><p>Finora hai imparato come creare
worker e iniziare a ricevere messaggi. Tuttavia, puoi anche terminare un worker
in esecuzione nel mezzo dell'esecuzione.</p><p>Il seguente esempio ti mostrerà
come avviare e arrestare worker da una pagina web facendo clic sui pulsanti
HTML. Utilizza lo stesso file JavaScript "worker.js" che abbiamo usato
nell'esempio precedente per contare i numeri da zero a 100000. Proviamolo:</p>
// Invialo in un messaggio
echo "dati: " . $currentTime . "\n\n";
sciacquone();
?></code></pre><pre class="syntax-highlighter line-numbers"><code
class="language-markup"><!DOCTYPE html>
<html lang="it">
<testa>
<title>Uso degli eventi inviati dal server</title>
<copione>
window.onload = funzione() {
var source = new EventSource("server_time.php");
source.onmessage = function(evento) {
document.getElementById("result").innerHTML += "Nuova ora ricevuta dal server
web: " + event.data + "<br>";
};
};
</copione>
</testa>
<corpo>
<div id="risultato">
<!--La risposta del server verrà inserita qui-->
</div>
</corpo>
</html></code></pre><p class="summary">In questo tutorial imparerai come
utilizzare la funzione degli eventi inviati dal server HTML5 per creare una
connessione unidirezionale e persistente tra una pagina web e il server
.</p><p>L'evento inviato dal server HTML5 è un nuovo modo per le pagine web di
comunicare con il server web. È anche possibile con l'oggetto XMLHttpRequest che
consente al tuo codice JavaScript di effettuare una richiesta al server Web, ma
è uno scambio uno a uno, ovvero una volta che il server Web fornisce la sua
risposta, la comunicazione è terminata. L'oggetto XMLHttpRequest è il fulcro di
tutte le operazioni <a
href="/javascript-tutorial/javascript-ajax.php">Ajax</a>.</p><p>Tuttavia, ci
sono alcune situazioni in cui le pagine web richiedono un tempo più lungo
connessione a termine al server web. Un esempio tipico sono le quotazioni di
borsa sui siti web finanziari in cui il prezzo viene aggiornato automaticamente.
Un altro esempio è un news ticker in esecuzione su vari siti Web di
media.</p><p>Puoi creare cose del genere con gli eventi inviati dal server
HTML5. Consente a una pagina Web di mantenere una connessione aperta a un server
Web in modo che il server Web possa inviare automaticamente una nuova risposta
in qualsiasi momento, non è necessario riconnettersi ed eseguire lo stesso
script del server da zero più e più volte.</ p><p>Creiamo un file PHP chiamato
"server_time.php" e digitiamo il seguente script al suo interno. Riporterà
semplicemente l'ora corrente dell'orologio integrato del server Web a intervalli
regolari. Recupereremo questo tempo e aggiorneremo la pagina web di conseguenza
più avanti in questo tutorial.</p><p>Le prime due righe dello <a href="/php-
tutorial/">script PHP</a> impostano due importanti intestazioni. Innanzitutto,
imposta il tipo MIME su <code>text/event-stream</code>, che è richiesto dallo
standard degli eventi lato server. La seconda riga indica al server Web di
disattivare la memorizzazione nella cache, altrimenti l'output del tuo script
potrebbe essere memorizzato nella cache.</p><p>Ogni messaggio inviato tramite
gli eventi inviati dal server HTML5 deve iniziare con il testo <code>data:</code
> seguito dal testo effettivo del messaggio e dalla sequenza di caratteri della
nuova riga (<code>\n\n</code>).</p><p>E infine, abbiamo utilizzato il PHP
<code>flush()</ code> per assicurarsi che i dati vengano inviati immediatamente,
anziché essere memorizzati nel buffer fino al completamento del codice
PHP.</p><p>L'oggetto <code>EventSource</code> viene utilizzato per ricevere i
messaggi di evento inviati dal server .</p><p>Ora creiamo un documento HTML
denominato "demo_sse.html" e posizioniamolo nella stessa directory del progetto
in cui si trova il file "server_time.php". Questo documento HTML riceve
semplicemente l'ora corrente riportata dal server web e la mostra
all'utente.</p>
funzione mostraPosizione() {
// Memorizza l'elemento in cui la pagina visualizza il risultato
risultato = document.getElementById("risultato");
funzione mostraMappa(posizione) {
// Ottieni i dati sulla posizione
var latlong = posizione.coords.latitudine + "," + posizione.coords.longitudine;
var mieOpzioni = {
centro: latilungo,
ingrandimento: 16,
mapTypeControl: vero,
opzionidicontrollodinavigazione: {
style:google.maps.NavigationControlStyle.SMALL
}
}
funzione mostraPosizione() {
if(navigatore.geolocalizzazione) {
watchID = navigator.geolocation.watchPosition(successCallback);
} altro {
alert("Spiacenti, il tuo browser non supporta la geolocalizzazione HTML5.");
}
}
function successCallback(posizione) {
toggleWatchBtn.innerHTML = "Smetti di guardare";
funzione startWatch() {
var risultato = document.getElementById("risultato");
toggleWatchBtn.onclick = funzione() {
if(watchID) {
toggleWatchBtn.innerHTML = "Inizia a guardare";
navigator.geolocation.clearWatch(watchID);
watchID = falso;
} altro {
toggleWatchBtn.innerHTML = "Acquisizione geolocalizzazione in corso...";
mostraPosizione();
}
}
}
<h1><span>Tag/Elementi</span>HTML5</h1><h2 class="order-info"><strong>Tag
HTML5</strong><span class="rounded toggle">Ordina per categoria< /span></h2><h2
id="structural-tags">Tag strutturali</h2><h2 id="metadata-tags">Tag
metadati</h2><h2 id="form-tags">Modulo Tag</h2><h2 id="formatting-
tags">Formattazione tag</h2><h2 id="list-tags">Elenco tag</h2><h2 id="table-
tags">Tabella tag< /h2><h2 id="scripting-tags">Tag di scripting</h2><h2
id="embedded-content-tags">Tag di contenuti incorporati</h2>
<p class="summary">Un codice lingua viene utilizzato per indicare la lingua del
contenuto.</p><p>La seguente tabella elenca i codici lingua ISO 639 di due
lettere (in ordine alfabetico per lingua) che possono essere utilizzati con gli
attributi <code>lang</code> e <code>xml:lang</code> per indicare la lingua
contenuta all'interno dell'elemento nel documento HTML e XHTML. I codici lingua
non fanno distinzione tra maiuscole e minuscole.</p>