บทช่วยสอนHTML

HTML หน้าแรก บทนำ HTML โปรแกรมแก้ไข HTML HTML พื้นฐาน องค์ประกอบ HTML แอตทริบิวต์ HTML ส่วนหัว HTML ย่อหน้า HTML รูปแบบ HTML การจัดรูปแบบ HTML ใบเสนอราคา HTML ความคิดเห็น HTML HTML สี HTML CSS ลิงค์ HTML รูปภาพ HTML HTML Favicon ตาราง HTML รายการ HTML บล็อก HTML & อินไลน์ คลาส HTML รหัส HTML HTML Iframes HTML JavaScript เส้นทางไฟล์ HTML หัวหน้า HTML เค้าโครง HTML HTML Responsive HTML รหัสคอมพิวเตอร์ HTML Semantics คู่มือสไตล์ HTML เอนทิตี HTML สัญลักษณ์ HTML HTML Emojis ชุดอักขระ HTML การเข้ารหัส URL HTML HTML กับ XHTML

แบบฟอร์มHTML

แบบฟอร์ม HTML คุณสมบัติแบบฟอร์ม HTML องค์ประกอบแบบฟอร์ม HTML ประเภทอินพุต HTML แอตทริบิวต์การป้อนข้อมูล HTML แอตทริบิวต์แบบฟอร์มการป้อนข้อมูล HTML

กราฟิกHTML

HTML Canvas HTML SVG

สื่อHTML

สื่อ HTML วิดีโอ HTML HTML Audio ปลั๊กอิน HTML HTML YouTube

HTML APIs

HTML Geolocation HTML ลาก/วาง HTML Web Storage HTML Web Workers HTML SSE

ตัวอย่างHTML

ตัวอย่าง HTML แบบทดสอบ HTML แบบฝึกหัด HTML ใบรับรอง HTML สรุป HTML การเข้าถึง HTML

ข้อมูลอ้างอิงHTML

รายการแท็ก HTML แอตทริบิวต์ HTML HTML Global Attributes รองรับ HTML Browser เหตุการณ์ HTML HTML สี HTML Canvas HTML เสียง/วิดีโอ HTML Doctypes ชุดอักขระ HTML การเข้ารหัส URL HTML HTML Lang Codes ข้อความ HTTP วิธี HTTP ตัวแปลง PX เป็น EM แป้นพิมพ์ลัด

HTML Web Storage API


ที่เก็บข้อมูลเว็บ HTML; ดีกว่าคุกกี้


HTML Web Storage คืออะไร?

ด้วยพื้นที่จัดเก็บบนเว็บ เว็บแอปพลิเคชันสามารถจัดเก็บข้อมูลภายในเบราว์เซอร์ของผู้ใช้ได้

ก่อน HTML5 ข้อมูลแอปพลิเคชันจะต้องเก็บไว้ในคุกกี้ ซึ่งรวมอยู่ในทุกคำขอของเซิร์ฟเวอร์ พื้นที่จัดเก็บเว็บมีความปลอดภัยมากขึ้น และสามารถจัดเก็บข้อมูลจำนวนมากในเครื่องได้ โดยไม่กระทบต่อประสิทธิภาพของเว็บไซต์

ขีด จำกัด ของพื้นที่เก็บข้อมูลนั้นแตกต่างจากคุกกี้มาก (อย่างน้อย 5MB) และข้อมูลจะไม่ถูกถ่ายโอนไปยังเซิร์ฟเวอร์

พื้นที่จัดเก็บเว็บต่อต้นทาง (ต่อโดเมนและโปรโตคอล) ทุกหน้าจากต้นทางเดียวสามารถจัดเก็บและเข้าถึงข้อมูลเดียวกันได้


รองรับเบราว์เซอร์

ตัวเลขในตารางระบุเบราว์เซอร์รุ่นแรกที่สนับสนุน Web Storage อย่างสมบูรณ์

API
Web Storage 4.0 8.0 3.5 4.0 11.5

HTML Web Storage Objects

ที่จัดเก็บเว็บ HTML จัดเตรียมสองอ็อบเจ็กต์สำหรับจัดเก็บข้อมูลบนไคลเอนต์:

  • window.localStorage- เก็บข้อมูลไม่มีวันหมดอายุ
  • window.sessionStorage- เก็บข้อมูลสำหรับหนึ่งเซสชัน (ข้อมูลจะหายไปเมื่อปิดแท็บเบราว์เซอร์)

ก่อนใช้ที่เก็บข้อมูลบนเว็บ ให้ตรวจสอบการรองรับเบราว์เซอร์สำหรับ localStorage และ sessionStorage:

if (typeof(Storage) !== "undefined") {
  // Code for localStorage/sessionStorage.
} else {
  // Sorry! No Web Storage support..
}


วัตถุ localStorage

ออบเจ็กต์ localStorage เก็บข้อมูลโดยไม่มีวันหมดอายุ ข้อมูลจะไม่ถูกลบเมื่อปิดเบราว์เซอร์ และจะพร้อมใช้งานในวัน สัปดาห์ หรือปีถัดไป

ตัวอย่าง

// Store
localStorage.setItem("lastname", "Smith");

// Retrieve
document.getElementById("result").innerHTML = localStorage.getItem("lastname");

ตัวอย่างอธิบาย:

  • สร้างคู่ชื่อ/ค่า localStorage ด้วย name="lastname" และ value="Smith"
  • ดึงค่าของ "นามสกุล" และใส่ลงในองค์ประกอบด้วย id="result"

ตัวอย่างข้างต้นสามารถเขียนได้ดังนี้:

// Store
localStorage.lastname = "Smith";
// Retrieve
document.getElementById("result").innerHTML = localStorage.lastname;

ไวยากรณ์สำหรับการลบรายการ "นามสกุล" localStorage มีดังนี้:

localStorage.removeItem("lastname");

หมายเหตุ:คู่ชื่อ/ค่าจะถูกเก็บไว้เป็นสตริงเสมอ อย่าลืมแปลงเป็นรูปแบบอื่นเมื่อจำเป็น!

ตัวอย่างต่อไปนี้นับจำนวนครั้งที่ผู้ใช้คลิกปุ่ม ในรหัสนี้ สตริงค่าจะถูกแปลงเป็นตัวเลขเพื่อเพิ่มตัวนับ:

ตัวอย่าง

if (localStorage.clickcount) {
  localStorage.clickcount = Number(localStorage.clickcount) + 1;
} else {
  localStorage.clickcount = 1;
}
document.getElementById("result").innerHTML = "You have clicked the button " +
localStorage.clickcount + " time(s).";

วัตถุ sessionStorage

วัตถุsessionStorageมีค่าเท่ากับวัตถุ localStorage ยกเว้น ว่าจะเก็บข้อมูลไว้สำหรับเซสชันเดียวเท่านั้น ข้อมูลจะถูกลบออกเมื่อผู้ใช้ปิดแท็บเบราว์เซอร์เฉพาะ

ตัวอย่างต่อไปนี้นับจำนวนครั้งที่ผู้ใช้คลิกปุ่มในเซสชันปัจจุบัน:

ตัวอย่าง

if (sessionStorage.clickcount) {
  sessionStorage.clickcount = Number(sessionStorage.clickcount) + 1;
} else {
  sessionStorage.clickcount = 1;
}
document.getElementById("result").innerHTML = "You have clicked the button " +
sessionStorage.clickcount + " time(s) in this session.";