Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> JavaScript
JavaScript
  1. Autocomplete Text Input ใน HTML5

    แอตทริบิวต์ autocomplete ควบคุมว่เบราว์เซอร์ควรแสดงคำแนะนำจากประวัติหรือไม่ ค่า Attribute ค่าคำอธิบาย on (Default)เบราว์เซอร์แสดงคำแนะนำจากประวัติ offปิด Autocomplete ผู้ใช้ต้องพิมพ์เอง ตัวอย่าง <!DOCTYPE html> <html> <head><title>HTML autocomplete</title></head&

  2. HTML5 Canvas Transformation Matrix

    Matrix Transformation Methods Canvas มี 2 เมธอดหลักสำหรับจัดการ Transformation Matrix: transform(m11, m12, m21, m22, dx, dy) - คูณ Matrix ปัจจุบันด้วย Matrix ใหม่ setTransform(m11, m12, m21, m22, dx, dy) - รีเซ็ตเป็น Identity แล้ว Apply Matrix ใหม่ Matrix Format (3x3) [ m11 m21 dx ] [ m12 m22

  3. ทำให้ HTML5 Canvas ขยายเต็มหน้าจอ (Full Page)

    CSS ทำให้ Canvas เต็ม Viewport * { margin: 0; padding: 0; } html, body { height: 100%; overflow: hidden; } #canvas { position: absolute; top: 0; left: 0; width: 100%; height: 100%; display: block; /* ป้องกัน whitespace ด้านล่าง */ } JavaScript ปรับขนาดจริง (Device Pixels) var canvas

  4. Internet Explorer รองรับ HTML5 File API หรือไม่?

    IE9: ไม่รองรับ | IE10+: รองรับ File API (FileReader, Blob, FileList) เริ่มรองรับใน IE10 ตัวอย่าง Drag and Drop (ต้อง IE10+) <!DOCTYPE HTML> <html> <head> <style> #boxA, #boxB { float:left; padding:10px; margin:10px; -moz-user-select:none; } #boxA { background:#6633F

  5. HTML5 Input type=number ตัดศูนย์นำหน้า (Leading Zero) - วิธีแก้

    ปัญหา <input type=number> จะตัดศูนย์นำหน้าออกอัตโนมัติ เช่น 00123 → 123 สร้างปัญหาสำหรับเบอร์โทร รหัสไปรษณีย์ หมายเลขบัตรประชาชน วิธีแก้ไข 1. ใช้ type=tel พร้อม pattern (แนะนำสำหรับเบอร์โทร) ✅ <input type=tel pattern=[0-9]*> iOS: แสดง numeric keyboard เต็มรูปแบบ Android: แสดง nume

  6. ตัวอย่าง Highcharts Donut Chart ไม่มี Inner Pie (HTML5)

    ตั้ง innerSize ให้ได้ Donut Chart Highcharts Pie Chart ตั้ง innerSize จะกลายเป็น Donut Configuration series: [{ name: Cars, data: [ [Audi, 4], [Benz, 6], [Jaguar, 9] ], size: 50%, // ขนาดนอก innerSize: 30%, // ขนาดใน (ช่องว่างกลาง) showInLegend:

  7. วาง HTML Canvas Element เป็นพื้นหลังหน้าเว็บ (Background)

    ใช้ CSS Position Fixed/Absolute + z-index ติดลบ CSS canvas { position: fixed; /* หรือ absolute */ top: 0; left: 0; width: 100%; height: 100%; z-index: -1; /* อยู่ด้านหลังเนื้อหาทั้งหมด */ pointer-events: none; /* ไม่บังการคลิก (ถ้าต้องการ) */ } หรือ Wrapper Div <style> #can

  8. เพิ่มขีดจำกัด Application Cache ของ Mobile Safari (HTML5)

    ขีดจำกัด Storage บน Mobile Safari Application Cache (AppCache): ไม่มีขีดจำกัดชัดเจน แต่ Deprecated แล้ว LocalStorage / SessionStorage: 5MB ต่อ Origin WebSQL: ถาม Permission ผู้ใช้ ขึ้นไปได้ ~50MB IndexedDB: ไม่มีขีดจำกัดคงที่ (ขึ้นกับพื้นที่ว่าง) iOS ใหม่ๆ (iOS 13+) หาก Web App ต้องการเกิน 5MB จะม

  9. วิธีติดตามหน้าเว็บใน Single Page Application (SPA) ด้วย Google Analytics

    บทนำ Single Page Application (SPA) โหลดทรัพยากรครั้งเดียวครั้งแรก แล้วเปลี่ยนเนื้อหาแบบไดนามิกโดยไม่โหลดหน้าใหม่ Google Analytics ต้องการการอัปเดต tracker ด้วยตนเองเมื่อเปลี่ยน หน้า ใน SPA ขั้นตอนการติดตาม 1. อัปเดต Tracker (Update the tracker) ga(set, page, /new-page.html); บอก GA ว่าผู้ใช้ ไปที่

  10. แสดงวิดีโอภายใน HTML5 Canvas

    ใช้ drawImage() วาด Video Frame ต่อเนื่อง var canvas = document.getElementById(canvas); var ctx = canvas.getContext(2d); var video = document.getElementById(video); video.addEventListener(play, function() { var $this = this; (function loop() { if (!$this.paused && !$this.ended) {

  11. Escape Single Quotes ใน JSON Encoded HTML5 Data Attributes

    ใช้ json_encode ร่วมกับ htmlspecialchars PHP <?php $tags = [html5, its, test]; // วิธี 1: htmlspecialchars + ENT_QUOTES printf(, htmlspecialchars(json_encode($tags), ENT_QUOTES, UTF-8)); // วิธี 2: JSON_HEX_APOS flag (PHP 5.3+) printf(, json_encode($tags, JSON_HEX_APOS)); ?> ผลลัพธ์ <artic

  12. ปัญหา Cross-domain HTML5 iframe แก้ด้วย postMessage

    ใช้ window.postMessage() สื่อสารข้ามโดเมน Same-Origin Policy บล็อกการเข้าถึง DOM ข้ามโดเมน postMessage เป็นทางออกมาตรฐาน Parent Page (Receiver) window.addEventListener(message, function(event) { // ตรวจสอบ origin เพื่อความปลอดภัย if (event.origin !== https://trusted-child.com) return; co

  13. HTML5 Canvas Element สร้างจาก Canvas Constructor ได้ไหม?

    ไม่ได้ ต้องใช้ document.createElement() ไม่มี Canvas() Constructor ให้ใช้งาน ต้องสร้างผ่าน DOM API วิธีที่ถูกต้อง var canvas = document.createElement(canvas); canvas.id = canvas1; canvas.width = 300; canvas.height = 150; document.body.appendChild(canvas); หรือเขียนใน HTML โดยตรง: <canvas id=canva

  14. HTML5 Tags ใดเหมาะสำหรับแสดงจำนวนเงิน (Money Amount)

    แท็กที่เหมาะสมสำหรับราคา/เงิน Microdata (Schema.org) - itemprop=price ใน Product หรือ Offer <strong> - เน้นความสำคัญของราคา (Semantic importance) <span class=price> - จัดสไตล์ด้วย CSS (Flexible) <b> - เน้นแบบ Visual (Non-semantic) ตัวอย่าง Microdata <div itemscope itemtype=htt

  15. ดึงข้อมูล Key/Value จาก HTML Form ด้วย jQuery

    ใช้ .serializeArray() HTML <form id=form1> <input type=text name=demo /> </form> JavaScript/jQuery var data = $(#form1).serializeArray(); // ผลลัพธ์: [{name: demo, value: ค่าที่ป้อน}] $.ajax({ url: /submit, method: POST, data: data // ส่งเป็น array of objects }); รูป

  16. HTML5 Validation มีประโยชน์ไหม?

    มีประโยชน์มาก ลดภาระ JavaScript Validation HTML5 มีแอตทริบิวต์ required, pattern, type=email|url|number ฯลฯ ทำ Validation ฝั่ง Client ได้โดยไม่ต้องเขียน JS ตัวอย่าง <!DOCTYPE HTML> <html> <body> <form action=/cgi-bin/html5.cgi method=get> <label>Email: <input t

Total 5941 -คอมพิวเตอร์  FirstPage PreviousPage NextPage LastPage CurrentPage:217/298  20-คอมพิวเตอร์/Page Goto:1 211 212 213 214 215 216 217 218 219 220 221 222 223