Heim >Web-Frontend >js-Tutorial >Wie teile ich SessionStorage-Daten über Browser-Registerkarten hinweg?

Wie teile ich SessionStorage-Daten über Browser-Registerkarten hinweg?

Patricia Arquette
Patricia ArquetteOriginal
2024-10-21 15:06:03551Durchsuche

How to Share SessionStorage Data Across Browser Tabs?

SessionStorage-Daten über Browser-Registerkarten hinweg teilen

Problem:

Sie möchten Daten in speichern Ihre Website, die von allen Registerkarten aus zugänglich ist und beim Schließen des Browsers gelöscht werden sollte. Allerdings bleibt sessionStorage nur innerhalb der aktuellen Registerkarte bestehen.

Frage:

Wie können Sie sessionStorage-Werte zwischen allen Browser-Registerkarten in Ihrer Anwendung teilen?

Antwort:

Sie können localStorage und seinen „storage“-EventListener verwenden, um SessionStorage-Daten von einer Registerkarte auf eine andere zu übertragen. So implementieren Sie dies:

  1. Fügen Sie den folgenden Code auf allen Registerkarten ein:

    <code class="js">// transfers sessionStorage from one tab to another
    var sessionStorage_transfer = function(event) {
      // Handle sessionStorage data transfer between tabs
    };
    
    // listen for changes to localStorage
    if(window.addEventListener) {
      window.addEventListener("storage", sessionStorage_transfer, false);
    } else {
      window.attachEvent("onstorage", sessionStorage_transfer);
    };</code>
  2. Ereignis auslösen So fordern Sie SessionStorage-Daten von anderen Tabs an:

    <code class="js">// Ask other tabs for session storage (this triggers the event)
    if (!sessionStorage.length) {
      localStorage.setItem('getSessionStorage', 'foobar');
      localStorage.removeItem('getSessionStorage', 'foobar');
    };</code>

Mit dieser Lösung können Sie SessionStorage-Daten auf allen Tabs im selben Browser teilen. Es handelt sich um eine nützliche Technik zur Verwaltung von Daten, die über mehrere Browser-Registerkarten hinweg zugänglich sein müssen.

Das obige ist der detaillierte Inhalt vonWie teile ich SessionStorage-Daten über Browser-Registerkarten hinweg?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn