Rumah > Artikel > hujung hadapan web > Bagaimana untuk Berkongsi Data SessionStorage Merentas Tab Penyemak Imbas?
Berkongsi Data Penyimpanan Sesi Merentas Tab Penyemak Imbas
Masalah:
Anda mahu menyimpan data dalam tapak web anda yang boleh diakses daripada semua tab dan harus dikosongkan apabila penyemak imbas ditutup. Walau bagaimanapun, sessionStorage hanya kekal dalam tab semasa.
Soalan:
Bagaimanakah anda boleh berkongsi nilai sessionStorage antara semua tab penyemak imbas dalam aplikasi anda?
Jawapan:
Anda boleh menggunakan localStorage dan "storage" eventListener untuk memindahkan data sessionStorage dari satu tab ke tab yang lain. Untuk melaksanakan ini:
Sertakan kod berikut pada semua tab:
<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>
Acara pencetus untuk meminta data sessionStorage daripada tab lain:
<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>
Penyelesaian ini membolehkan anda berkongsi data sessionStorage merentas semua tab dalam penyemak imbas yang sama. Ia ialah teknik yang berguna untuk mengekalkan data yang perlu boleh diakses merentas berbilang tab penyemak imbas.
Atas ialah kandungan terperinci Bagaimana untuk Berkongsi Data SessionStorage Merentas Tab Penyemak Imbas?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!