HTML5本地存儲(chǔ)應(yīng)用sessionStorage和localStorage
Aug 19, 2017 pm 02:13 PM在html5之前,瀏覽器要實(shí)現(xiàn)數(shù)據(jù)的存儲(chǔ),一般都是用cookie,但是cookie有域名和大小限定.?
html5流行之后,可以通過(guò)localStorage和sessionStorage實(shí)現(xiàn)瀏覽器端的數(shù)據(jù)存儲(chǔ),這兩者有什么特點(diǎn)呢?
sessionStorage
? ? sessionStorage屬于臨時(shí)會(huì)話,數(shù)據(jù)存儲(chǔ)的有效期為:從頁(yè)面打開(kāi)到頁(yè)面關(guān)閉的時(shí)間段,屬于窗口的臨時(shí)存儲(chǔ),頁(yè)面關(guān)閉,本地存儲(chǔ)消失
localStorage
永久存儲(chǔ)(可以手動(dòng)刪除數(shù)據(jù))
存儲(chǔ)量限制 ( 5M )
客戶端完成,不會(huì)請(qǐng)求服務(wù)器處理
sessionStorage數(shù)據(jù)在頁(yè)面之間不能共享、 而localStorage可以實(shí)現(xiàn)頁(yè)面之間共享
sessionStorage的應(yīng)用:
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> <script> window.onload = function(){ var aInput = document.getElementsByTagName('input'); aInput[0].onclick = function(){ //sessionStorage: 臨時(shí)存儲(chǔ), 只在當(dāng)前頁(yè)面有效,不能傳遞到其他頁(yè)面,頁(yè)面關(guān)閉之后消失 window.sessionStorage.setItem("name", aInput[3].value ); }; aInput[1].onclick = function(){ alert(window.sessionStorage.getItem("name" )); }; aInput[2].onclick = function(){ window.sessionStorage.removeItem("name" ); }; } </script> </head> <body> <input type="button" value="設(shè)置" /> <input type="button" value="獲取" /> <input type="button" value="刪除" /> <br/> <input type="text" /> </body> </html>
localStorage的應(yīng)用
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> <script> window.onload = function(){ var aInput = document.getElementsByTagName('input'); aInput[0].onclick = function(){ //localStorage : 永久性存儲(chǔ) window.localStorage.setItem("name", aInput[3].value); window.localStorage.setItem("name2", 'aaaaa'); }; aInput[1].onclick = function(){ alert( window.localStorage.getItem( "name" ) ); alert( window.localStorage.getItem( "name2" ) ); }; aInput[2].onclick = function(){ window.localStorage.removeItem("name"); // window.localStorage.clear(); }; } </script> </head> <body> <input type="button" value="設(shè)置" /> <input type="button" value="獲取" /> <input type="button" value="刪除" /> <br/> <input type="text" /> </body> </html>
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> <script> window.onload = function () { var aInput = document.getElementsByTagName("input"); var oT = document.querySelector("textarea"); if (window.localStorage.getItem("userName")) { aInput[0].value = window.localStorage.getItem("userName"); } for (var i = 0; i < aInput.length; i++) { if (window.localStorage.getItem('sex') == aInput[i].value) { aInput[i].checked = true; } } if (window.localStorage.getItem("note")) { oT.value = window.localStorage.getItem("note"); } window.onunload = function () { if (aInput[0].value) { window.localStorage.setItem("userName", aInput[0].value); } for (var i = 0; i < aInput.length; i++) { if (aInput[i].checked == true) { window.localStorage.setItem('sex', aInput[i].value); } } if (oT.value) { window.localStorage.setItem('note', oT.value); } } } </script> </head> <body> <p> 用戶名: <input type="text"/> </p> <p> 性別: <br/> <input type="radio" name="sex" value="男"/>男 <input type="radio" name="sex" value="女"/>女 </p> <p> 備注: <textarea cols="30" rows="10"></textarea> </p> </body> </html>
Atas ialah kandungan terperinci HTML5本地存儲(chǔ)應(yīng)用sessionStorage和localStorage. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undress AI Tool
Gambar buka pakaian secara percuma

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

HTML5, CSS dan JavaScript harus digabungkan dengan tag semantik, pesanan pemuatan yang munasabah dan reka bentuk decoupling. 1. Gunakan tag semantik HTML5, seperti meningkatkan kejelasan struktur dan penyelenggaraan, yang kondusif untuk SEO dan akses bebas penghalang; 2. CSS harus diletakkan, gunakan fail luaran dan berpecah oleh modul untuk mengelakkan gaya sebaris dan masalah pemuatan yang tertunda; 3. JavaScript disyorkan untuk diperkenalkan di hadapan, dan gunakan penangguhan atau async untuk memuat secara asynchronously untuk mengelakkan menyekat rendering; 4. Mengurangkan pergantungan yang kuat antara ketiga-tiga, tingkah laku memandu melalui atribut data dan status kawalan nama kelas, dan meningkatkan kecekapan kerjasama melalui spesifikasi penamaan bersatu. Kaedah ini dapat mengoptimumkan prestasi halaman dengan berkesan dan bekerjasama dengan pasukan.

Ia adalah elemen peringkat blok, sesuai untuk susun atur; Ia adalah elemen sebaris, sesuai untuk membungkus kandungan teks. 1. Secara eksklusif menduduki garis, lebar, ketinggian dan margin boleh ditetapkan, yang sering digunakan dalam susun atur struktur; 2. Tiada garis pecah, saiz ditentukan oleh kandungan, dan sesuai untuk gaya teks tempatan atau operasi dinamik; 3. Apabila memilih, ia harus dihakimi berdasarkan sama ada kandungan memerlukan ruang bebas; 4. Ia tidak boleh bersarang dan tidak sesuai untuk susun atur; 5. Keutamaan diberikan kepada penggunaan label semantik untuk meningkatkan kejelasan struktur dan kebolehcapaian.

HTML5introducednewinputtypesthatenhanceformfunctionalityanduserexperiencebyimprovingvalidation,UI,andmobilekeyboardlayouts.1.emailvalidatesemailaddressesandsupportsmultipleentries.2.urlchecksforvalidwebaddressesandtriggersURL-optimizedkeyboards.3.num

Untuk mendapatkan lokasi semasa pengguna, gunakan HTML5 GeolocationAPI. API ini memberikan maklumat seperti latitud dan longitud selepas kebenaran pengguna. Kaedah teras adalah getCurrentPosition (), yang memerlukan panggilan balik yang berjaya dan ralat untuk dikendalikan; Pada masa yang sama, perhatikan prasyarat HTTPS, mekanisme kebenaran pengguna dan pemprosesan kod ralat. ① Panggil GetCurrentPosition untuk mendapatkan kedudukan sekali, dan panggilan balik ralat akan dicetuskan jika gagal; ② Pengguna mesti membenarkannya, jika tidak, ia tidak dapat diperoleh dan mungkin tidak lagi diminta; ③ Pemprosesan ralat harus membezakan antara penolakan, tamat masa, lokasi tidak tersedia, dan sebagainya; ④ Dayakan ketepatan tinggi, menetapkan masa tamat, dan lain-lain, dan boleh dikonfigurasikan melalui parameter ketiga; ⑤ Persekitaran dalam talian mesti menggunakan HTTPS, jika tidak, ia mungkin dihadkan oleh penyemak imbas.

Perbezaan antara async dan menangguhkan adalah masa pelaksanaan skrip. Async membolehkan skrip dimuat turun selari dan dilaksanakan dengan segera selepas memuat turun, tanpa menjamin perintah pelaksanaan; Defer melaksanakan skrip dalam rangka selepas parsing HTML selesai. Kedua -duanya mengelakkan menyekat parsing HTML. Menggunakan Async sesuai untuk skrip mandiri seperti menganalisis kod; Defer sesuai untuk senario di mana anda perlu mengakses DOM atau bergantung pada skrip lain.

Kunci untuk menggunakan butang radio dalam HTML5 adalah untuk memahami bagaimana mereka berfungsi dan menyusun struktur kod dengan betul. 1. Atribut nama setiap butang radio mestilah sama untuk mencapai pemilihan yang saling eksklusif; 2. Gunakan tag label untuk meningkatkan kebolehcapaian dan klik pengalaman; 3. Adalah disyorkan untuk membungkus setiap pilihan dalam div atau label untuk meningkatkan kejelasan struktur dan kawalan gaya; 4. Tetapkan pilihan lalai melalui atribut yang diperiksa; 5. Nilai nilai harus ringkas dan bermakna, yang mudah untuk pemprosesan penyerahan bentuk; 6. Gaya ini boleh disesuaikan melalui CSS, tetapi fungsi perlu dipastikan normal. Menguasai perkara -perkara utama ini secara berkesan dapat mengelakkan masalah biasa dan meningkatkan keberkesanan penggunaan.

Perbezaan teras antara LocalStorage dan sessionStorage terletak pada kegigihan data dan skop. 1. Kitaran Hayat Data: Data LocalStorage disimpan untuk masa yang lama kecuali jika dibersihkan secara manual, dan data SesiStorage dibersihkan selepas menutup tab; 2. 3. Senario Penggunaan: LocalStorage sesuai untuk menyimpan data jangka panjang seperti keutamaan pengguna dan status log masuk, sessionStorage sesuai untuk data bentuk sementara atau proses sesi tunggal; 4. Konsistensi API: Dua Kaedah Operasi

Ya, ia adalah sebahagian daripada HTML5, tetapi penggunaannya secara beransur -ansur menurun dan kontroversi. Digunakan untuk menggabungkan tajuk utama dengan sari kata supaya hanya tahap tertinggi tajuk yang dikenalpasti dalam garis besar dokumen; Sebagai contoh, tajuk utama dan sarikata boleh dibungkus untuk menunjukkan bahawa mereka hanya tajuk tambahan daripada tajuk bab bebas; Walau bagaimanapun, sebab -sebab mengapa mereka tidak lagi digunakan secara meluas termasuk: 1. Pembaca penyemak imbas dan skrin adalah sokongan yang tidak konsisten untuk mereka, 2. Terdapat alternatif yang lebih mudah seperti menggunakan CSS untuk mengawal gaya, 3. Walaupun demikian, ia masih boleh dipertimbangkan di laman web atau dokumen dengan keperluan semantik yang tinggi; Walaupun dalam kebanyakan kes, pemaju cenderung menggunakan satu, menguruskan gaya melalui CSS dan mengekalkan tahap tajuk yang jelas.
