Almacenamiento

  • Enlace amigable (slug) de la revisión: DOM/Almacenamiento
  • Título de la revisión: Almacenamiento
  • Id de la revisión: 73660
  • Creada:
  • Creador: inma_610
  • ¿Es la revisión actual? No
  • Comentario 2 words added

Contenido de la revisión

{{ DomRef() }}

Introducción

El almacenamiento DOM (DOM Storage) es el nombre dado al conjunto de características relacionadas con el almacenamiento introducidas en la especificación de aplicaciones web 1.0 y ahora detalladas por separado en su propia especificación W3C Web Storage. El almacenamiento DOM está diseñado para facilitar una alternativa amplia, segura y sencilla para almacenar información en cookies. Actualmente sólo está disponible en los navegadores basados en Mozilla, habiendo comenzado con Firefox 2Safari 4 .

Nota: El almacenamiento DOM no es lo mismo que mozStorage (las interfaces XPCOM de Mozilla para SQLite) o la API para guardar sesiones (una utilidad de almacenamiento XPCOM usada por extensiones).

Descripción

El mecanismo de almacenamiento DOM es el medio a través del cual pares de clave/valor pueden ser almacenadas de forma segura para ser recuperadas y utilizadas más adelante. La meta de este añadido es suministrar un método exhaustivo a través del cual puedan construirse aplicaciones interactivas (incluyendo características avanzadas tales como ser capaces de trabajar "sin conexión" durante largos períodos de tiempo).

Actualmente sólo los navegadores basados en Mozilla, Internet Explorer 8 y Safari (otros navegadores basados en webkit, como Google Chrome, no)  proporcionan una implementación funcional de la especificación del almacenamiento DOM. Sin embargo, las versiones anteriores a Internet Explorer 8 poseen una característica similar llamada "userData behavior" que permite conservar datos entre múltiples sesiones.

El almacenamiento DOM es útil ya que ningún navegador dispone de buenos métodos para conservar cantidades razonables de datos durante un periodo de tiempo. Las cookies de los navegadores tienen una capacidad limitada y no proporcionan soporte para organizar datos persistentes y otros métodos (tales como almacenamiento local de Flash) necesitan un plugin externo.

Una de las primeras aplicaciones hechas públicas que hace uso de la nueva funcionalidad de almacenamiento DOM (además del userData Behavior de Internet Explorer) fue halfnote (una aplicación para tomar notas) escrita por Aaron Boodman. En su aplicación, Aaron enviaba notas hacia el servidor (cuando la conexión a Internet estaba disponible) y simultáneamente las guardaba en local. Esto permitía al usuario escribir notas de modo seguro incluso cuando no disponía de conexión a Internet.

Aunque el concepto e implementación presentada en halfnote era en comparación simple, su creación mostró las posibilidades de esta nueva generación de aplicaciones web utilizables tanto con conexión como sin ella.

Referencias

Los siguientes objetos globales existen como propiedades de cada objeto window. Esto significa que se puede acceder a ellas como sessionStorage o window.sessionStorage (Esto es importante ya que se puede usar IFrames para almacenar o acceder a datos adicionales, más allá de lo que está inmediatamente incluido en la página).

Storage

Este es un constructor ( Storage ) para todas los ejemplos de almacenamiento ( sessionStorage y globalStorage[location.hostname]). Al ajuste Storage.prototype.removeKey = function(key){ this.removeItem(this.key(key)) } se accedería como localStorage.removeKey and sessionStorage.removeKey. Los elementos globalStorage no son un ejemplo de Storage , sino de StorageObsolete . Storage se define por la interfaz de almacenamiento WhatWG como la siguiente: La interfaz de Almacenamiento { readonly attribute unsigned long length; [IndexGetter]clave DOMString (en el índice de largo sin signo); [NameGetter] DOMString GetItem (en clave DOMString); [NameSetter] void setItem (en clave DOMString, en los datos DOMString); [NameDeleter] void removeItem (en clave DOMString); void clear(); };

sessionStorage

Este es un objeto global (sessionStorage) que mantiene un área de almacenamiento que está disponible durante la sesión de página. Una sesión de página existe mientras el navegador esté abierto y sobrevive a recargas o restauraciones de páginas. Abrir una página en una nueva pestaña o en una ventana provoca que se cree una nueva sesión.

// Guardar datos en el almacén de la sesión actual
sessionStorage.username = "John";

// Acceder a algunos datos almacenados
alert( "username = " + sessionStorage.username );

El objeto sessionStorage es más usado para manejar datos temporales que deberían ser guardados y recuperados si el navegador es recargado accidentalmente.

{{ fx_minversion_note("3.5", "Prior to Firefox 3.5, sessionStorage data was not restored automatically after recovering from a browser crash.  Starting in Firefox 3.5, this works as per the specification.") }}

Ejemplos:

Autoguardado de los contenidos de un campo de texto y, si el navegador se recarga accidentalmente, restauración del contenido del campo de texto para evitar la pérdida de datos.

 // Obtener el campo de texto al que vamos a seguir la pista
 var field = document.getElementById("field");
 
 // Ver si se tiene un valor de autoguardado
 // (esto sólo sucede si la página es actualizada accidentelmente)
 if ( sessionStorage.autosave ) {
     // Restore the contents of the text field
     field.value = sessionStorage.autosave;
 }
 
 // Comprobar los contenidos del campo de texto cada segundo
 setInterval(function(){
     // And save the results into the session storage object
     sessionStorage.autosave = field.value;
 }, 1000);

Más información:

globalStorage

{{ Non-standard_header() }} This is a global object (globalStorage) that maintains multiple private storage areas that can be used to hold data over a long period of time (e.g. over multiple pages and browser sessions).

Note: globalStorage is not a Storage instance, but a StorageList instance containing StorageObsolete instances.

Este es un objeto global (globalStorage) que mantiene múltiples áreas públicas y privadas que pueden ser utilizadas para guardar datos durante un largo período de tiempo (p.e. sobre múltiples páginas y sesiones de navegador).

// Guardar datos a los que sólo pueden acceder scripts del dominio mozilla.org
globalStorage['mozilla.org'].snippet = "<b>Hello</b>, how are you?";

Específicamente, el objeto globalStorage proporciona acceso a un número de diferentes objetos de almacenamiento en los que los datos pueden ser guardados. Por ejemplo, si se construye una página web que usa globalStorage en este dominio (developer.mozilla.org) se dispondría de los siguientes objetos de almacenamiento:

  • globalStorage['developer.mozilla.org']- Todas las páginas web dentro del subdominio developer.mozilla.org podrán leer de y escribir datos en este objeto de almacenamiento.

{{ Fx_minversion_note("3") }}

Ejemplos:

Todos estos ejemplos necesitan que haya un script insertado (con el siguiente código) en cada página en la que se quiera ver el resultado.

Recordar el nombre de usuario de un usuario para un subdominio en particular que está siendo visitado:

 globalStorage['developer.mozilla.org'].username = "John";

Seguir la pista al número de veces que un usuario visita todas las páginas de un dominio.

 // parseInt must be used since all data is stored as a string
 globalStorage['mozilla.org'].visits =
     parseInt( globalStorage['mozilla.org'].visits || 0 ) + 1;

 

localStorage
Edit section

localStorage is the same as globalStorage[location.hostname], with the exception of being scoped to an HTML5 origin (scheme + hostname + non-standard port) and localStorage being an instance of Storage as opposed to globalStorage[location.hostname] being an instance of StorageObsolete. For example, http://example.com is not able to access the same localStorage object as https://example.com but they can access the same globalStorage item. localStorage is a standard interface while globalStorage is non-standard. localStorage was introduced in Firefox 3.5.

Please note that setting a property on globalStorage[location.hostname] does not set it on localStorage and extending Storage.prototype does not affect globalStorage items, only extending StorageObsolete.prototype does.

Note: When the browser goes into private browsing mode, a new, temporary database is created to store local storage data; this database is empied, and is thrown away when private browsing mode is turned off.

Storage location and clearing the data
Edit section

The DOM storage data is stored in the webappsstore.sqlite file in the profile folder.

  • DOM Storage can be cleared via "Tools -> Clear Recent History -> Cookies" when Time range is "Everything" (via nsICookieManager::removeAll)
    • But not when another time range is specified: (bug 527667)
    • Does not show up in Tools -> Options -> Privacy -> Remove individual cookies (bug 506692)
  • DOM Storage is not cleared via Tools -> Options -> Advanced -> Network -> Offline data -> Clear Now.
  • Doesn't show up in the "Tools -> Options -> Advanced -> Network -> Offline data" list, unless the site also uses the offline cache. If the site does appear in that list, its DOM storage data is removed along with the offline cache when clicking the Remove button.

See also clearing offline resources cache.

Más información

Ejemplos

  • JavaScript Web Storage Tutorial: Creating an Address Book Application - hands-on tutorial describing how to use the Web Storage API by creating a simple address book application
  • offline web applications at hacks.mozilla.org - showcases an offline app demo and explains how it works.
  • Noteboard - Note writing application that stores all data locally.
  • jData - A shared localStorage object interface that can be accessed by any website on the internet and works on Firefox 3+, Webkit 3.1.2+ nightlies, and IE8. Think of it as pseudo-globalStorage[""] but write access needs user confirmation.
  • HTML 5 localStorage example. Very simple and easy to understand example of localStorage. Saves and retrieves texts and shows a list of saved items. Tested in Firefox 3 or higher.
  • HTML5 Session Storage. A very simple example of session storage. Also includes a example on local storage. Tested in Firefox 3.6 or higher.

Contenido relacionado

 

{{ HTML5ArticleTOC() }}

 

 

{{ languages( { "en": "en/DOM/Storage", "fr": "fr/DOM/Storage", "ja": "ja/DOM/Storage", "pl": "pl/DOM/Storage", "zh-cn": "cn/DOM/Storage" } ) }}

Fuente de la revisión

<p>{{ DomRef() }}</p>
<h3 name="Introducci.C3.B3n">Introducción</h3>
<p>El almacenamiento DOM (DOM Storage) es el nombre dado al conjunto de <a class="external" href="http://www.whatwg.org/specs/web-apps/current-work/#storage">características relacionadas con el almacenamiento</a> introducidas en la especificación de <a class="external" href="http://www.whatwg.org/specs/web-apps/current-work/">aplicaciones web 1.0</a> y ahora detalladas por separado en su propia especificación <a class="external" href="http://dev.w3.org/html5/webstorage/" rel="external nofollow" target="_blank" title="http://dev.w3.org/html5/webstorage/">W3C Web Storage</a>. El almacenamiento DOM está diseñado para facilitar una alternativa amplia, segura y sencilla para almacenar información en cookies. Actualmente sólo está disponible en los navegadores basados en Mozilla, habiendo comenzado con <a href="/es/Firefox_2_para_desarrolladores" title="es/Firefox_2_para_desarrolladores">Firefox 2</a> y  <a class="external" href="http://developer.apple.com/safari/library/documentation/iPhone/Conceptual/SafariJSDatabaseGuide/Name-ValueStorage/Name-ValueStorage.html" rel="external nofollow" target="_blank" title="http://developer.apple.com/safari/library/documentation/iPhone/Conceptual/SafariJSDatabaseGuide/Name-ValueStorage/Name-ValueStorage.html">Safari 4</a> .</p>
<div class="note"><strong>Nota:</strong> El almacenamiento DOM no es lo mismo que <a href="/es/Almacenamiento" title="es/Almacenamiento">mozStorage</a> (las interfaces XPCOM de Mozilla para SQLite) o la <a href="/es/API_para_guardar_sesiones" title="es/API_para_guardar_sesiones">API para guardar sesiones</a> (una utilidad de almacenamiento <a href="/es/XPCOM" title="es/XPCOM">XPCOM</a> usada por extensiones).</div>
<h3 name="Descripci.C3.B3n">Descripción</h3>
<p>El mecanismo de almacenamiento DOM es el medio a través del cual pares de clave/valor pueden ser almacenadas de forma segura para ser recuperadas y utilizadas más adelante. La meta de este añadido es suministrar un método exhaustivo a través del cual puedan construirse aplicaciones interactivas (incluyendo características avanzadas tales como ser capaces de trabajar "sin conexión" durante largos períodos de tiempo).</p>
<p>Actualmente sólo los navegadores basados en Mozilla, Internet Explorer 8 y Safari (otros navegadores basados en webkit, como Google Chrome, no)  proporcionan una implementación funcional de la especificación del almacenamiento DOM. Sin embargo, las versiones anteriores a Internet Explorer 8 poseen una característica similar llamada "<a class="external" href="http://msdn.microsoft.com/workshop/author/behaviors/reference/behaviors/userdata.asp">userData behavior</a>" que permite conservar datos entre múltiples sesiones.</p>
<p>El almacenamiento DOM es útil ya que ningún navegador dispone de buenos métodos para conservar cantidades razonables de datos durante un periodo de tiempo. Las <a class="external" href="http://en.wikipedia.org/wiki/HTTP_cookie">cookies de los navegadores</a> tienen una capacidad limitada y no proporcionan soporte para organizar datos persistentes y otros métodos (tales como <a class="external" href="http://www.macromedia.com/support/documentation/en/flashplayer/help/help02.html">almacenamiento local de Flash</a>) necesitan un plugin externo.</p>
<p>Una de las primeras aplicaciones hechas públicas que hace uso de la nueva funcionalidad de almacenamiento DOM (además del userData Behavior de Internet Explorer) fue <a class="external" href="http://aaronboodman.com/halfnote/">halfnote</a> (una aplicación para tomar notas) escrita por <a class="external" href="http://aaronboodman.com/">Aaron Boodman</a>. En su aplicación, Aaron enviaba notas hacia el servidor (cuando la conexión a Internet estaba disponible) y simultáneamente las guardaba en local. Esto permitía al usuario escribir notas de modo seguro incluso cuando no disponía de conexión a Internet.</p>
<p>Aunque el concepto e implementación presentada en halfnote era en comparación simple, su creación mostró las posibilidades de esta nueva generación de aplicaciones web utilizables tanto con conexión como sin ella.</p>
<h3 name="Referencias">Referencias</h3>
<p>Los siguientes objetos globales existen como propiedades de cada <a href="/es/DOM/window" title="es/DOM/window">objeto <code>window</code></a>. Esto significa que se puede acceder a ellas como <code>sessionStorage</code> o <code>window.sessionStorage</code> (Esto es importante ya que se puede usar IFrames para almacenar o acceder a datos adicionales, más allá de lo que está inmediatamente incluido en la página).</p>
<h4>Storage</h4>
<p>Este es un constructor ( Storage ) para todas los ejemplos de almacenamiento ( sessionStorage y globalStorage[location.hostname]). Al ajuste Storage.prototype.removeKey = function(key){ this.removeItem(this.key(key)) } se accedería como localStorage.removeKey and sessionStorage.removeKey. Los elementos globalStorage no son un ejemplo de Storage , sino de StorageObsolete . Storage se define por la interfaz de almacenamiento WhatWG como la siguiente: La interfaz de Almacenamiento { readonly attribute unsigned long length; [IndexGetter]clave DOMString (en el índice de largo sin signo); [NameGetter] DOMString GetItem (en clave DOMString); [NameSetter] void setItem (en clave DOMString, en los datos DOMString); [NameDeleter] void removeItem (en clave DOMString); void clear(); };</p>
<h4 name="sessionStorage"><code>sessionStorage</code></h4>
<p>Este es un objeto global (<code>sessionStorage</code>) que mantiene un área de almacenamiento que está disponible durante la sesión de página. Una sesión de página existe mientras el navegador esté abierto y sobrevive a recargas o restauraciones de páginas. Abrir una página en una nueva pestaña o en una ventana provoca que se cree una nueva sesión.</p>
<pre class="eval">// Guardar datos en el almacén de la sesión actual
sessionStorage.username = "John";

// Acceder a algunos datos almacenados
alert( "username = " + sessionStorage.username );
</pre>
<p>El objeto <code>sessionStorage</code> es más usado para manejar datos temporales que deberían ser guardados y recuperados si el navegador es recargado accidentalmente.</p>
<p>{{ fx_minversion_note("3.5", "Prior to Firefox 3.5, sessionStorage data was not restored automatically after recovering from a browser crash.  Starting in Firefox 3.5, this works as per the specification.") }}</p>
<p><strong>Ejemplos:</strong></p>
<p>Autoguardado de los contenidos de un campo de texto y, si el navegador se recarga accidentalmente, restauración del contenido del campo de texto para evitar la pérdida de datos.</p>
<pre class="eval"> // Obtener el campo de texto al que vamos a seguir la pista
 var field = document.getElementById("field");
 
 // Ver si se tiene un valor de autoguardado
 // (esto sólo sucede si la página es actualizada accidentelmente)
 if ( sessionStorage.autosave ) {
     // Restore the contents of the text field
     field.value = sessionStorage.autosave;
 }
 
 // Comprobar los contenidos del campo de texto cada segundo
 setInterval(function(){
     // And save the results into the session storage object
     sessionStorage.autosave = field.value;
 }, 1000);
</pre>
<p><strong>Más información:</strong></p>
<ul> <li><a class="external" href="http://www.whatwg.org/specs/web-apps/current-work/#sessionstorage">sessionStorage specification</a></li>
</ul>
<h4 name="globalStorage"><code>globalStorage</code></h4>
<p>{{ Non-standard_header() }} This is a global object (<code>globalStorage</code>) that maintains multiple private storage areas that can be used to hold data over a long period of time (e.g. over multiple pages and browser sessions).</p>
<div class="warning">Note: <code>globalStorage</code> is not a <code>Storage</code> instance, but a <code>StorageList</code> instance containing <code>StorageObsolete</code> instances.</div>
<p>Este es un objeto global (<code>globalStorage</code>) que mantiene múltiples áreas públicas y privadas que pueden ser utilizadas para guardar datos durante un largo período de tiempo (p.e. sobre múltiples páginas y sesiones de navegador).</p>
<pre class="eval">// Guardar datos a los que sólo pueden acceder scripts del dominio mozilla.org
globalStorage['mozilla.org'].snippet = "&lt;b&gt;Hello&lt;/b&gt;, how are you?";

</pre>
<p>Específicamente, el objeto <code>globalStorage</code> proporciona acceso a un número de diferentes objetos de almacenamiento en los que los datos pueden ser guardados. Por ejemplo, si se construye una página web que usa <code>globalStorage</code> en este dominio (developer.mozilla.org) se dispondría de los siguientes objetos de almacenamiento:</p>
<ul> <li><code>globalStorage['developer.mozilla.org']</code>- Todas las páginas web dentro del subdominio developer.mozilla.org podrán leer de y escribir datos en este objeto de almacenamiento.</li>
</ul>
<p>{{ Fx_minversion_note("3") }}</p>
<p><strong>Ejemplos:</strong></p>
<p>Todos estos ejemplos necesitan que haya un script insertado (con el siguiente código) en cada página en la que se quiera ver el resultado.</p>
<p>Recordar el nombre de usuario de un usuario para un subdominio en particular que está siendo visitado:</p>
<pre class="eval"> globalStorage['developer.mozilla.org'].username = "John";
</pre>
<p>Seguir la pista al número de veces que un usuario visita todas las páginas de un dominio.</p>
<pre class="eval"> // parseInt must be used since all data is stored as a string
 globalStorage['mozilla.org'].visits =
     parseInt( globalStorage['mozilla.org'].visits || 0 ) + 1;
</pre>
<p> </p>
<h4 class="editable"><span><code>localStorage</code></span>
<div class="editIcon"><a href="/../../../../en/DOM/Storage#" style="visibility: hidden;" title="Edit section"><span class="icon"><img alt="Edit section" class="sectionedit" src="../../../../skins/common/icons/icon-trans.gif"></span></a></div>
</h4>
<p><code>localStorage</code> is the same as <code>globalStorage[location.hostname]</code>, with the exception of being scoped to an HTML5 origin (scheme + hostname + non-standard port) and <code>localStorage</code> being an instance of <code>Storage</code> as opposed to <code>globalStorage[location.hostname]</code> being an instance of <code>StorageObsolete</code>. For example, <a class=" external" href="http://example.com/" rel="external nofollow" target="_blank" title="http://example.com">http://example.com</a> is not able to access the same <code>localStorage</code> object as <a class=" link-https" href="https://example.com/" rel="external nofollow" target="_blank" title="https://example.com">https://example.com</a> but they can access the same <code>globalStorage</code> item. <code>localStorage</code> is a standard interface while <code>globalStorage</code> is non-standard. <code>localStorage</code> was introduced in Firefox 3.5.</p>
<p>Please note that setting a property on <code>globalStorage[location.hostname]</code> does <strong>not</strong> set it on <code>localStorage</code> and extending <code>Storage.prototype</code> does not affect <code>globalStorage</code> items, only extending <code>StorageObsolete.prototype</code> does.</p>
<div class="note"><strong>Note:</strong> When the browser goes into private browsing mode, a new, temporary database is created to store local storage data; this database is empied, and is thrown away when private browsing mode is turned off.</div>
<div id="section_8">
<h3 class="editable"><span>Storage location and clearing the data</span>
<div class="editIcon"><a href="/../../../../en/DOM/Storage#" style="visibility: hidden;" title="Edit section"><span class="icon"><img alt="Edit section" class="sectionedit" src="../../../../skins/common/icons/icon-trans.gif"></span></a></div>
</h3>
<p>The DOM storage data is stored in the <a class=" external" href="http://kb.mozillazine.org/Webappsstore.sqlite" rel="external nofollow" target="_blank" title="http://kb.mozillazine.org/Webappsstore.sqlite">webappsstore.sqlite file</a> in the profile folder.</p>
<ul> <li>DOM Storage can be cleared via "Tools -&gt; Clear Recent History -&gt; Cookies" when Time range is "Everything" (via nsICookieManager::removeAll) <ul> <li>But not when another time range is specified: (<a class=" link-https" href="https://bugzilla.mozilla.org/show_bug.cgi?id=527667" rel="external nofollow" target="_blank" title="https://bugzilla.mozilla.org/show_bug.cgi?id=527667">bug 527667</a>)</li> <li>Does not show up in Tools -&gt; Options -&gt; Privacy -&gt; Remove individual cookies (<a class=" link-https" href="https://bugzilla.mozilla.org/show_bug.cgi?id=506692" rel="external nofollow" target="_blank" title="https://bugzilla.mozilla.org/show_bug.cgi?id=506692">bug 506692</a>)</li> </ul> </li> <li>DOM Storage is <strong>not</strong> cleared via Tools -&gt; Options -&gt; Advanced -&gt; Network -&gt; Offline data -&gt; Clear Now.</li> <li>Doesn't show up in the "Tools -&gt; Options -&gt; Advanced -&gt; Network -&gt; Offline data" list, unless the site also uses the offline cache. If the site does appear in that list, its DOM storage data is removed along with the <a href="../../../../en/Offline_resources_in_Firefox" rel="internal">offline cache</a> when clicking the Remove button.</li>
</ul>
<p>See also <a href="../../../../en/Offline_resources_in_Firefox#Storage_location_and_clearing_the_offline_cache" rel="internal">clearing offline resources cache</a>.</p>
</div>
<h3 name="M.C3.A1s_informaci.C3.B3n">Más información</h3>
<ul> <li><a class="external" href="http://www.w3.org/TR/webstorage/" rel="external nofollow" target="_blank" title="http://www.w3.org/TR/webstorage/">Web Storage</a> (W3C Web Apps Working Group)</li> <li><a class="external" href="http://kb.mozillazine.org/Dom.storage.enabled" rel="external nofollow" target="_blank" title="http://kb.mozillazine.org/Dom.storage.enabled">Enable/Disable DOM Storage in Firefox or SeaMonkey</a></li>
</ul>
<h3 name="Ejemplos">Ejemplos</h3>
<ul> <li><a class="external" href="http://www.diveintojavascript.com/tutorials/web-storage-tutorial-creating-an-address-book-application" rel="external nofollow" target="_blank" title="JavaScript Web Storage Tutorial: Creating an Address Book Application">JavaScript Web Storage Tutorial: Creating an Address Book Application</a> - hands-on tutorial describing how to use the Web Storage API by creating a simple address book application</li> <li><a class=" external" href="http://hacks.mozilla.org/2010/01/offline-web-applications/" rel="external nofollow" target="_blank" title="http://hacks.mozilla.org/2010/01/offline-web-applications/">offline web applications</a> at hacks.mozilla.org - showcases an offline app demo and explains how it works.</li> <li><a class="external" href="http://noteboard.eligrey.com/" rel="external nofollow" target="_blank" title="http://noteboard.eligrey.com/">Noteboard</a> - Note writing application that stores all data locally.</li> <li><a class="external" href="http://github.com/eligrey/jData-host" rel="external nofollow" target="_blank" title="http://github.com/eligrey/jData-host">jData</a> - A shared localStorage object interface that can be accessed by any website on the internet and works on Firefox 3+, Webkit 3.1.2+ nightlies, and IE8. Think of it as pseudo-globalStorage[""] but write access needs user confirmation.</li> <li><a class="external" href="http://codebase.es/test/webstorage.html" rel="external nofollow" target="_blank" title="http://codebase.es/test/webstorage.html">HTML 5 localStorage example</a>. Very simple and easy to understand example of localStorage. Saves and retrieves texts and shows a list of saved items. Tested in Firefox 3 or higher.</li> <li><a class="external" href="http://upload.jonathanwilsson.com/html5/sessionstorage.php" rel="external nofollow" target="_blank" title="http://upload.jonathanwilsson.com/html5/sessionstorage.php">HTML5 Session Storage</a>. A very simple example of session storage. Also includes a example on local storage. Tested in Firefox 3.6 or higher.</li>
</ul>
<h3 name="Contenido_relacionado">Contenido relacionado</h3>
<p> </p>
<ul> <li><a class="external" href="http://en.wikipedia.org/wiki/HTTP_cookie">HTTP cookies</a> (<code><a href="/en/DOM/document.cookie" title="en/DOM/document.cookie">document.cookie</a></code>)</li> <li><a class="external" href="http://www.macromedia.com/support/documentation/en/flashplayer/help/help02.html">Flash Local Storage</a></li> <li><a class="external" href="http://msdn2.microsoft.com/en-us/library/ms531424.aspx">Internet Explorer userData behavior</a></li> <li><a href="/en/XPCOM_Interface_Reference/nsIDOMStorageEventObsolete" title="en/XPCOM Interface Reference/nsIDOMStorageEventObsolete">nsIDOMStorageEventObsolete</a></li> <li><a href="/en/DOM/event/StorageEvent" title="en/DOM/Event/StorageEvent">StorageEvent</a></li>
</ul>
<p>{{ HTML5ArticleTOC() }}</p>
<p> </p>
<p> </p>
<p>{{ languages( { "en": "en/DOM/Storage", "fr": "fr/DOM/Storage", "ja": "ja/DOM/Storage", "pl": "pl/DOM/Storage", "zh-cn": "cn/DOM/Storage" } ) }}</p>
Revertir a esta revisión