ส่งเอกสารจาวาสคริปต์ ส่งจาวาสคริปต์ Pod onclick javaScript และสามวิธีในการประมวลผล sub
Tipi Podіy
ในช่วงเริ่มต้นของการพัฒนาเว็บของ All-World ผู้ค้าปลีกทางเว็บมีอินพุตเพียงเล็กน้อย: "โหลด", "คลิก", "เมาส์โอเวอร์" และอื่นๆ ประเภทเก่าเหล่านี้ได้รับการสนับสนุนอย่างดีจากเบราว์เซอร์ทั้งหมด ในโลกของการพัฒนาแพลตฟอร์มเว็บ มีอินเทอร์เฟซแอปพลิเคชันขั้นสูงขึ้น และจำนวนแอปพลิเคชันเพิ่มขึ้นอย่างมาก ไม่เป็นไปตามมาตรฐานซึ่งเป็นพื้นฐานของการสรรหาบุคลากรใหม่และจำนวนแผนกที่ได้รับการปรับปรุงปรับปรุงอย่างต่อเนื่องอย่างรวดเร็ว Qi podіїใหม่ได้รับการลงนามที่สอง dzherelakh:
ข้อมูลจำเพาะของเหตุการณ์ DOM ระดับ 3 หลังจากหยุดนิ่งเป็นเวลานาน เริ่มได้รับการพัฒนาอย่างแข็งขันภายใต้กลุ่ม W3C
การไม่มีอินเทอร์เฟซแอปพลิเคชันใหม่ในข้อกำหนด HTML5 (และในข้อกำหนดเพิ่มเติมที่เกี่ยวข้อง) กำหนดส่วนย่อยใหม่ที่เลือก ตัวอย่างเช่น เพื่อจัดการประวัติการเข้า กลไกการลากและวาง (โดยการลากและออกจากโปรแกรม) , แลกเปลี่ยนคลิปเสียงและวิดีโอ
เพื่อแสดงความเคารพว่าแนวทางใหม่ๆ จำนวนมากยังไม่ถูกขจัดไปโดยแนวคิดกว้างๆ และกำลังถูกนำไปใช้โดยมาตรฐาน ราวกับว่าแนวทางเหล่านั้นยังอยู่ในขั้นตอนการออกแบบ หากคุณมีแนวโน้มมากที่สุดที่จะชนะด้วยส่วนเสริมของเว็บ เสียงจะถูกจัดอยู่ในหมวดหมู่ของเบราว์เซอร์ที่รู้จักมายาวนานและรองรับ: tse podії สำหรับหุ่นยนต์ที่ใช้เมาส์ คีย์บอร์ด รูปแบบ HTML และหน้าต่าง วัตถุ. Qi podіїเราดู
ยื่นเอกสาร
จำเป็นต้องมีเว็บzastosunkіvเพิ่มเติมเพื่อให้เว็บเบราว์เซอร์แจ้งพวกเขาเกี่ยวกับช่วงเวลาที่การดาวน์โหลดเอกสารสิ้นสุดลงและจะพร้อมที่จะดำเนินการกับมัน Tsіy meti เพื่อให้บริการpodіya โหลดในวัตถุหน้าต่าง โหลด Podiya จะถูกทำลายหลังจากนั้นเช่นเดียวกับเอกสารรูปภาพทั้งหมดจะน่าสนใจยิ่งขึ้น สามารถเรียกใช้สคริปต์ป้องกันได้ทันทีหลังจากแยกวิเคราะห์เอกสาร ก่อนจับภาพ เป็นไปได้ที่จะใช้เวลาหนึ่งชั่วโมงในการรันโปรแกรมเว็บ เพื่อให้คุณสามารถเริ่มพิมพ์สคริปต์สำหรับพ็อดที่ควบคุมโหลดได้
โพเดีย DOMContentLoadedเป็นที่คาดหวังให้ทันทีที่เอกสารถูกจับ แยกวิเคราะห์โดย parser และการส่งสคริปต์ทั้งหมดจะได้รับการตรวจสอบ จนถึงจุดนี้ในรูปภาพ สคริปต์เหล่านั้นที่มีแอตทริบิวต์ async อาจยังคงใช้ต่อไป แต่ตัวเอกสารเองจะยังพร้อมก่อนที่การดำเนินการจะเสร็จสิ้น Podia นี้เปิดตัวครั้งแรกใน Firefox และนับตั้งแต่นั้นมาก็ถูกผู้ผลิตเบราว์เซอร์รายอื่นๆ ปฏิเสธ รวมถึง Microsoft Corporation เนื่องจากได้เพิ่ม podtrip ให้กับ IE9 โดยไม่คำนึงถึงคำนำหน้า DOM ในชื่อ มันไม่ได้เป็นส่วนหนึ่งของมาตรฐานโมเดลเหตุการณ์ DOM ระดับ 3 แต่เป็นมาตรฐานตามข้อกำหนด HTML5
ค่าของความจุ document.readyState มีการเปลี่ยนแปลงภายใต้ชั่วโมงของการรับเอกสาร การเปลี่ยนแปลงสกินของค่าพลังงานใน IE นั้นมาพร้อมกับ readystatechange ในวัตถุ Document ทำไมใน IE จึงสามารถเปลี่ยนแปลงได้ในขณะที่ปรากฏ ฉันจะกลายเป็นสมบูรณ์ ข้อกำหนด HTML5 กำหนดมาตรฐานโดเมนย่อย พร้อมสถานะเปลี่ยน, Ale ลงโทษ zbudzhuvati yogo โดยไม่ต้องมีคนกลางก่อนโหลดโหลด ฉันไม่รู้ว่าทำไม ในกรณีนี้จำเป็นต้องยอมรับ readystatechange ก่อนโหลด
แอปพลิเคชันด้านล่างมีฟังก์ชัน whenReady() ฟังก์ชันที่ส่งผ่านไปยังฟังก์ชัน whenReady() จะถูกเรียก (เป็นวิธีการของอ็อบเจ็กต์ Document) เมื่อเอกสารพร้อมก่อนที่การดำเนินการจะสิ้นสุดลง whenReady() ตรวจสอบลักษณะที่ปรากฏของส่วนย่อย DOMContentLoaded และ readystatechange และส่วนย่อยการโหลดเป็นเพียงตัวเลือกทางเลือก แม้ว่าจะใช้งานไม่ได้ในเบราว์เซอร์รุ่นเก่า เนื่องจากไม่รองรับสองส่วนย่อยแรก ฟังก์ชัน whenReady() จะได้รับเกียรติในทุกสถานการณ์ที่วางเมาส์เหนือ:
/* ส่งฟังก์ชันของคุณไปที่ฟังก์ชัน whenReady() และจะมี (เป็นวิธีการของอ็อบเจ็กต์เอกสาร) เพื่อให้การแยกวิเคราะห์เอกสารจะเสร็จสมบูรณ์และจะพร้อมก่อนที่การดำเนินการจะเสร็จสิ้น ฟังก์ชันที่ลงทะเบียนไว้จะถูกเรียกในโดเมนย่อย DOMContentLoaded, readystatechange หรือ load แรก ทันทีที่เอกสารกำลังถูกจัดเตรียมและฟังก์ชันทั้งหมดจะถูกเรียกใช้ whenReady() จะเรียกฟังก์ชันทั้งหมดที่ส่งผ่านโดยอัตโนมัติ */ var whenReady = (function() ( // ฟังก์ชันนี้หมุนโดยฟังก์ชัน whenReady() var funcs = ; // ฟังก์ชันที่ควรจะเรียกสำหรับการคลิกย่อย var ready = false; // ลบค่าจริง เมื่อฟังก์ชันถูกเรียก handler // Sample sub ซึ่งถูกเรียกเหมือนกับเอกสาร // จะพร้อมก่อนสิ้นสุดการทำงาน function handler(e) ( // หากมีการเรียก handler แล้ว ให้หมุนปุ่มควบคุม if (ready) return; เช่น "complete" หมายถึงเอกสารยังไม่พร้อม if (e.type==="readystatechange" && document.readyState !== "complete") return;// เรียกฟังก์ชันที่ลงทะเบียนทั้งหมดครั้งเดียว ค่าของ // พลังของ funcs.length ถูกตรวจสอบราวกับว่าหนึ่งในฟังก์ชั่นที่เรียกว่า // ลงทะเบียนฟังก์ชั่นเพิ่มเติม สำหรับ(var i = 0; i
มาเลยหมี
จากหมีมันถูกผูกไว้กับแท่น chimalo กลิ่นเหม็นทั้งหมดจะถูกเรียกคืนที่ตารางด้านล่าง ทั้งหมดอยู่ภายใต้เมาส์ Crim mouseenter และ mouseleave ผสานเข้าด้วยกัน สำหรับการคลิกซึ่งถูกตำหนิในความแข็งแกร่งของปุ่มและความแรงของรูปแบบการถ่ายโอนการกระทำมาตรฐานอย่างที่คุณพูด ในทางทฤษฎี เป็นไปได้ที่จะระบุเมนูย่อยของเมนูบริบทและหลีกเลี่ยงการปรากฏของเมนูบริบท มิฉะนั้น เบราว์เซอร์จะตั้งค่าพารามิเตอร์ได้ เพื่อไม่ให้มองเห็นเมนูย่อย
พิมพ์ | คำอธิบาย |
---|---|
คลิก | โพเดียสูงซึ่งจะตื่นขึ้นหาก coristuvach กดปุ่มที่ปล่อยปุ่มเมาส์หรือเปิดใช้งานองค์ประกอบ |
เมนูบริบท | แก้ไขพรอมต์ที่ทริกเกอร์ก่อนที่เมนูบริบทจะแสดงขึ้น เบราว์เซอร์ปัจจุบันแสดง เมนูบริบทโดยคลิกที่ปุ่มขวาของเมาส์ คุณยังสามารถร้องเพลง โพเดียคลิก. |
dblclick | เป็นเรื่องน่าตกใจหาก coristuvach ชนะเสียงดัง |
เมาส์ลง | ตื่นตระหนกหาก coristuvach กดปุ่มของเมาส์ |
mouseup | ตื่นตระหนกถ้า coristuvach ปล่อยปุ่มเมาส์ |
mousemove | เป็นเรื่องน่าตกใจหาก koristuvach เลื่อนไปที่เมาส์ |
เลื่อนเมาส์ไป | ตื่นตระหนกหากวางเป้าหมายไว้เหนือองค์ประกอบ พลังของที่เกี่ยวข้องTarget (หรือองค์ประกอบใน IE) กำหนดองค์ประกอบที่จะย้ายเป้าหมายไป |
mouseout | จะอารมณ์เสียถ้าเป้าหมายของเมาส์เหนือองค์ประกอบ พลังของ relatedTarget (หรือ toElement ใน IE) กำหนดองค์ประกอบที่เป้าหมายเป้าหมายเคลื่อนที่ |
mouseenter | เหมือนวางเมาส์ไว้แต่อย่าผสาน ปรากฏครั้งแรกใน IE และกำหนดมาตรฐานโดย HTML5 แต่ยังไม่รองรับเบราว์เซอร์ทั้งหมด |
mouseleave | เช่นเดียวกับการเอาเมาส์ออก แต่อย่ารวมเข้าด้วยกัน ปรากฏครั้งแรกใน IE และกำหนดมาตรฐานโดย HTML5 แต่ยังไม่รองรับเบราว์เซอร์ทั้งหมด |
วัตถุที่ส่งต่อไปยังนักโบราณคดีโดยใช้ชื่อเมาส์นั้นอาจมีกำลัง ลูกค้าXі ลูกค้าY, พิกัดเริ่มต้นของอินดิเคเตอร์แสดงให้เห็นว่ามันดีแค่ไหน ในการแปลงให้เป็นพิกัดของเอกสาร จำเป็นต้องเพิ่มตำแหน่งของหน้าต่างหมุนวนเข้าไป
พลัง altKey, ctrlKey, metaKeyі shiftKey vyznachayut กลายเป็นตัวปรับเปลี่ยนคีย์ที่แตกต่างกัน yakіสามารถ utrimuvatisya ในสถานะที่ถูกกดในขณะที่ podії: s їkh นอกจากนี้คุณสามารถเพิ่มการปะทุอย่างง่ายเช่นการเสียงดังด้วยปุ่ม Shift ที่กดไว้
พลัง ปุ่มดูเหมือนว่าปุ่มของเมาส์ถูกกดลงที่สถานีที่ถูกกดในขณะที่เข้าใกล้ อย่างไรก็ตาม เบราว์เซอร์ต่างๆ กันบันทึกพลังของค่าต่างๆ กัน ดังนั้นจึงง่ายที่จะคิดออกในวิธีพกพา
เบราว์เซอร์Deyakі zbudzhuyut podіyu คลิกน้อยลงที่ด้านบนของปุ่มซ้าย เพื่อที่จะทำอย่างนั้น จำเป็นต้องทำให้การกระทบกระเทือนด้วยปุ่มอื่นๆ ให้เสร็จ ถัดจากการตีภายใต้ mousedown และ mouseup Podіyaเมนูบริบทzvіdіzuєเกี่ยวกับ scho scho vykonano ที่ส่งเสียงดังด้วยปุ่มขวา, เบียร์, ตามที่ตั้งใจไว้มากกว่านี้, ในตำราเรียนtsієїpodіїไม่ zavzhli คุณสามารถลืมรูปลักษณ์ของเมนูบริบทได้
ในแอปพลิเคชันด้านล่าง มีการแสดงฟังก์ชัน drag() เพื่อที่ว่าเมื่อคลิกเมาส์ลง จะทำให้เมาส์สามารถลากองค์ประกอบที่อยู่ในตำแหน่งที่แน่นอนของเอกสารได้ ฟังก์ชัน drag() ใช้งานได้กับทั้งสองรุ่น DOM และ IE
ฟังก์ชัน drag() รับสองอาร์กิวเมนต์ อย่างแรกคือองค์ประกอบที่ถูกดึงออกมา คุณยังสามารถใช้องค์ประกอบในลักษณะเดียวกับ winkla ภายใต้ mousedown และล้างแค้นองค์ประกอบนี้ (เช่น คุณสามารถให้ความสามารถในการบันทึกองค์ประกอบที่ดูเหมือนชื่อหน้าต่างของเมาส์ และลากองค์ประกอบนี้ซึ่งมีลักษณะ เหมือนหน้าต่าง) อย่างไรก็ตาม ไม่ว่าจะด้วยเหตุผลใดก็ตาม อาจมีองค์ประกอบเอกสารที่อยู่ในตำแหน่งที่แน่นอน ช่วย CSS-แอตทริบิวต์ตำแหน่ง อาร์กิวเมนต์อีกประการหนึ่งคือเป้าหมายของการแบ่งย่อย การลบออกจากส่วนย่อย yakuvikladeno:
/* drag() - ลากองค์ประกอบ HTML ในตำแหน่งที่แน่นอน ฟังก์ชัน Tsya มีความผิดใน viklikatisya จาก obrobnik podії nabladnannya ฝีเท้าของเป้าหมายสามารถเรียกการเคลื่อนไหวขององค์ประกอบที่ระบุ Mouseup จะทำให้การย้ายเสร็จสมบูรณ์ Tsya realizatiya diєในทั้งสองรุ่นpodіy, มาตรฐานและ IE ฟังก์ชันชัยชนะ getScrollOffsets() อาร์กิวเมนต์: elementToDrag: องค์ประกอบที่ต้องยอมรับ ล้างแค้น หรือล้างแค้นองค์ประกอบนั้น องค์ประกอบนี้คือการตำหนิตำแหน่งที่แน่นอนของมารดา ค่าของอำนาจทั้ง style.left และ style.top จะเปลี่ยนไปเมื่อเคอร์เซอร์ถูกเลื่อนด้วยเมาส์ เหตุการณ์: วัตถุเหตุการณ์ซึ่งถูกพรากไปโดยความเข้าใจของpodіїซึ่งเปล่งออกมาในท้องฟ้า */ ฟังก์ชั่นลาก (elementToDrag, เหตุการณ์) ( // แปลงพิกัดเว็บเบราว์เซอร์ของเมาส์เป็นพิกัดของเอกสาร var scroll = getScrollOffsets(); // ฟังก์ชั่นเพิ่มเติม แสดงผลด้านล่าง var startX = event.clientX + scroll.x; var startY clientY + เลื่อน .y;// พิกัดราก (ตามด้านบนของเอกสาร) ขององค์ประกอบที่ // จะถูกย้าย mice.mousemove และ mouseup // ราวกับว่ากำลังติดตาม mousedown.if ของเมาส์ย่อย (document.addEventListener) ( / / รุ่นย่อยมาตรฐาน // ลงทะเบียนตัวจัดการการเปลี่ยนแปลงในเอกสาร document.addEventListener("mousemove", moveHandler, true); document.addEventListener ("mouseup", upHandler, true); ) else if (document.attachEvent) ( // IE sub โมเดลสำหรับ IE5-8 // โมเดลย่อย IE มีส่วนที่ยื่นออกมาโดยคลิก // บนเมธอด setCapture() ขององค์ประกอบ elementToDrag.setCaptur อี(); elementToDrag.attachEvent("onmousemove", moveHandler); elementToDrag.attachEvent("onmouseup", upHandler); // ตีความค่าใช้จ่ายในการวางเมาส์เป็น drop .stopPropagation) event.stopPropagation(); // เหตุการณ์เริ่มต้นของโมเดลอื่น cancelBubble=true; // IE // ยกโทษให้ vicon ไปข้างหน้าสำหรับการสู้รบ ถ้า (event.preventDefault) event.preventDefault(); // โมเดลมาตรฐาน else event.returnValue = false; // IE /* ตัวจัดการนี้จะแทนที่ mousemove ซึ่งถูกตำหนิในกระบวนการลากองค์ประกอบ Vіnvіdpovіdaєสำหรับการย้ายองค์ประกอบ */ ฟังก์ชั่น moveHandler(e) ( if (!e) e = window.event; // IE submodel // ย้ายองค์ประกอบที่ตำแหน่งของตัวจัดการเมาส์ด้วยตำแหน่งที่แก้ไข // เลื่อนตำแหน่งนั้นเหมือนการคลิก cob var scroll = getScrollOffsets( );elementToDrag.style.left = (e.clientX + scroll.x - deltaX) + "px"; ย้ายไปอีกถ้า (e.stopPropagation) e.stopPropagation(); // รุ่นมาตรฐานอื่น e.cancelBubble = true; // IE ) /* ฉันจะห่อตัวจัดการนี้ด้วย mouseup ย่อยเพื่อให้การลากเสร็จสมบูรณ์ */ function upHandler(e) ( if (!e) e = window.event; // IE Pod Model // การมองเห็นของ rehousing Pod Handlers. if (document.removeEventListener) ( // Pod DOM Model document.removeEventListener("mouseup " ) , upHandler, จริง); "onmouseup", upHandler); elementToDrag.detachEvent("onmousemove", moveHandler); elementToDrag.releaseCapture(); ) // ฉันขัดจังหวะการขยายด้านล่างให้กว้างขึ้น e.cancelBubble = จริง; // IE ) ) // หมุนตำแหน่งการเลื่อนปัจจุบันของการเลื่อนอย่างสบายใจที่รูปลักษณ์ของพลัง x และ y ของฟังก์ชันวัตถุ getScrollOffsets(w) ( // เลื่อนไปที่หน้าต่างที่ระบุหรือให้ละเอียดยิ่งขึ้น // นี่คือสิ่งที่ถูกต้อง ฟังก์ชันที่ไม่มีอาร์กิวเมนต์ w = w | window;// วิธีที่น่ารังเกียจใช้ได้กับทุกเบราว์เซอร์ ยกเว้น IE เวอร์ชัน 8 และต่ำกว่า if (w.pageXOffset! = null) return (x: w.pageXOffset, y:w.pageYOffset); // สำหรับ IE (เบราว์เซอร์อื่นๆ เหล่านั้น) ในโหมดมาตรฐาน var d = w.document; if (document.compatMode == "CSSICompat") return (x: d.documentElement.scrollLeft, y: d.documentElement.scrollTop); / / สำหรับเบราว์เซอร์ในโหมดรวมผลตอบแทน (x: d.body. scrollLeft, y: d.body.scrollTop); )
ตัวอย่างต่อไปนี้แสดงให้เห็นถึงลำดับการใช้ฟังก์ชัน drag() ในไฟล์ HTML:
เทสทดสอบ. รีไวร์ รีไวร์ รีไวร์.
ที่สำคัญที่สุดที่นี่คือแอตทริบิวต์ onmousedown ขององค์ประกอบที่ซ้อนกัน
ส่งข้อความ
เบราว์เซอร์รองรับอินพุตเก่าสามรายการจากแป้นพิมพ์ Podії keydown และ keyup єpodіyamiต่ำที่เห็นได้ที่สาขาที่น่ารังเกียจ โพรเทโพเดีย กดปุ่มє vysokorіvnevim, scho vodomlyaє, scho ได้รับการแนะนำสัญลักษณ์อื่น
ข้อมูลจำเพาะร่างเหตุการณ์ระดับ 3 ของ DOM กำหนดพ็อดที่ระบุเพิ่มเติม ป้อนข้อความสร้างขึ้นพร้อมท์สำหรับการแนะนำข้อความ โดยไม่คำนึงถึงวิธีการเขียนคำนำ
มาเผยแพร่อินพุต textinput กันและนำไปใช้ในชั่วโมงของอินพุต textInput วัตถุอินพุตแบบง่ายจะถูกส่งผ่าน ซึ่งมีพลังของข้อมูลซึ่งรับอินพุตข้อความ (มิฉะนั้นแนะนำความจำเพาะของพลังงาน, inputMethod, สามารถใช้เพื่อบ่งบอกถึงอินพุต แต่ยังไม่ได้ดำเนินการ) เมื่อคุณป้อนข้อมูลพลังงานจากแป้นพิมพ์ให้เสียงอักขระตัวเดียว แต่เมื่อคุณ ป้อนสตริงอื่น ๆ อักขระใหม่สามารถละเว้นได้
ออบเจ็กต์การส่งซึ่งโอนมาจากปุ่มกดย่อยสามารถจัดระเบียบได้ Podіyaปุ่มกด є є є อักขระตัวเดียว อักขระนี้ถูกวางไว้ในวัตถุภายใต้รูปลักษณ์ของค่าตัวเลขของจุดรหัส Unicode i เพื่อเปลี่ยนเป็นแถว จำเป็นต้องบิดเมธอด String.fromCharCode() ในเบราว์เซอร์ส่วนใหญ่ จุดโค้ดของอักขระที่ป้อนจะถูกบันทึกเป็น รหัสกุญแจวัตถุของการส่ง อย่างไรก็ตาม ด้วยเหตุผลทางประวัติศาสตร์ Firefox มีพลังแห่งชัยชนะใหม่ charCode.
ในเบราว์เซอร์ส่วนใหญ่ คีย์ย่อยของปุ่มกดจะแตกเมื่อคุณป้อนอักขระที่แตกต่างกันเท่านั้น อย่างไรก็ตาม รูทีนย่อยการกดแป้นพิมพ์ของ Firefox ก็หยุดทำงานสำหรับอักขระที่ไม่ได้ใช้งานด้วย เพื่อเบี่ยงเบนจากสองจุด (และละเว้นสัญลักษณ์ที่ไม่ต่อสู้) คุณสามารถกลับค่า 0
สามารถตรวจสอบการป้อนข้อความย่อย การป้อนข้อความ และการกดปุ่ม เพื่อแทนที่อักขระที่ป้อน Tobto, qі podії can vikoristovuvat สำหรับการกรองการแนะนำ ตัวอย่างเช่น คุณสามารถข้ามการป้อนตัวอักษรในช่องที่กำหนดไว้สำหรับการป้อนข้อมูลตัวเลข
ในแอปพลิเคชันด้านล่าง โมดูลจะแสดงบน JavaScript ของฉันที่ใช้การกรองดังกล่าว วิน shukaє elementi іzแอตทริบิวต์ data-allowed-chars เพิ่มเติม (ที่ไม่ได้มาตรฐาน) การลงทะเบียนของ textinput, textInput และ keypress subtypes สำหรับองค์ประกอบที่รู้จักทั้งหมดและระหว่างความเป็นไปได้ของอินพุตโดยอักขระนิพจน์ทั่วไปที่ระบุในแอตทริบิวต์ data-allowed-chars:
/* กรองอินพุตสำหรับองค์ประกอบ โมดูลทั้งหมดค้นหาองค์ประกอบทั้งหมด เอกสารที่มีแอตทริบิวต์ "data-allowed-chars" ได้ คีย์รีจิสทรี, textinput และ textInput สำหรับองค์ประกอบเหล่านี้ เพื่อใส่ชุดของ for . ที่ถูกต้อง ใส่ตัวอักษรเพื่อให้คุณป้อนมากกว่าอักขระที่กำหนดให้กับแอตทริบิวต์ องค์ประกอบ Yakscho นอกจากนี้ สามารถใช้แอตทริบิวต์ "data-messageid" ได้ ค่าของแอตทริบิวต์นี้จะถูกตีความว่าเป็น ID ขององค์ประกอบอื่นในเอกสาร หากคุณต้องการป้อนอักขระที่ไม่ถูกต้อง องค์ประกอบที่มี id ถูกตั้งค่าให้มองเห็นได้ หากคุณต้องการป้อนอักขระที่ถูกต้อง อนุญาตให้ใช้องค์ประกอบได้ องค์ประกอบที่มีการอ้างอิงนี้ถูกกำหนดเพื่อวัตถุประสงค์ในการอธิบายว่าทำไมจึงมีการบันทึกการแนะนำของ coristuvacha การออกแบบนี้จำเป็นต้องดำเนินการด้วยความช่วยเหลือของ CSS ในลักษณะที่มองไม่เห็น */ whenReady(ฟังก์ชัน () ( // เรียกใช้ฟังก์ชันนี้หากเอกสารพร้อมใช้งาน // รู้องค์ประกอบทั้งหมด) var inputelts = document.getElementsByTagName("อินพุต"); // เดินผ่านพวกเขาใน for(var i = 0; i< inputelts.length; i++) { var elt = inputelts[i]; // Пропустить элементы, не являющиеся текстовыми полями ввода // и не имеющие атрибута data-allowed-chars if (elt.type != "text" || !elt.getAttribute("data-allowed-chars")) continue; // Зарегистрировать наш обработчик события в этом элементе input // keypress старое событие и реализовано во всех браузерах. // textInput поддерживается в Safari и Chrome с 2010 года. // textinput версия проекта стандарта "DOM Level 3 Events". if (elt.addEventListener) { elt.addEventListener("keypress", filter, false); elt.addEventListener("textInput", filter, false); elt.addEventListener("textinput", filter, false); } // textinput не поддерживается версиями IE, в которых не реализован // метод addEventListener() else { elt.attachEvent("onkeypress", filter); } } // Обработчик событий keypress и textInput, фильтрующий ввод пользователя function filter(event) { // Получить объект события и целевой элемент target var e = event || window.event; // Модель стандартная или IE var target = e.target || e.srcElement; // Модель стандартная или IE var text = null; // Введенный текст // Получить введенный символ или текст if (e.type === "textinput" || e.type === "textInput") text = e.data; else { // Это было событие keypress // Введенный печатаемый символ в Firefox сохраняется в свойстве charCode var code = e.charCode || e.keyCode; // Если была нажата какая либо функциональная клавиша, не фильтровать ее if (code < 32 || // Управляющий символ ASCII e.charCode == 0 || // Функциональная клавиша (в Firefox) e.ctrlKey || e.altKey) // Удерживаемая клавиша-модификатор return; // Не фильтровать это событие // Преобразовать код символа в строку var text = String.fromCharCode(code); } // Отыскать необходимую нам информацию в этом элементе input var allowed = target.getAttribute("data-allowed-chars"); // Допустимые символы var messageid = target.getAttribute("data-messageid"); // Сообщение id if (messageid) // Если указано значение id, получить элемент var messageElement = document.getElementById(messageid); // Обойти в цикле символы во введенном тексте for(var i = 0; i < text.length; i++) { var c = text.charAt(i); allowed = new RegExp(allowed, "i"); // Создаем регулярное выражение if (c.search(allowed) == -1) { // Недопустимый символ? // Отобразить элемент с сообщением, если указан if (messageElement) messageElement.style.visibility="visible"; // Отменить действия по умолчанию, чтобы предотвратить вставку текста if (e.preventDefault) e.preventDefault(); if (e.returnValue) e.returnValue = false; return false; } } // Если все символы оказались допустимыми, скрыть элемент // с сообщением, если он был указан if (messageElement) messageElement.style.visibility = "hidden"; } });
ด้านล่างนี้เป็นการบ่งชี้ส่วนมาร์กอัป HTML ซึ่งเป็นโมดูลหลัก:
ตัวเล็กด้านล่างแสดงรูปแบบ vikoristannya tsієї ที่นี่หลังจากป้อนชื่อ ฉันใส่หมายเลข เนื่องจาก bula ถูกบล็อกโดยอัตโนมัติและมีการแจ้งเตือนล่วงหน้า:
คีย์ย่อยและข้อความป้อนเข้าจะถูกสร้างขึ้นทันทีก่อนการแทรกข้อความใหม่ลงในองค์ประกอบเอกสาร ซึ่งมีจุดเน้นของอินพุต ดังนั้นคอมไพเลอร์ของอินพุตเหล่านี้สามารถรบกวนการแทรกข้อความโดยการพูดอินพุต
เบราว์เซอร์ยังใช้ Pod ป้อนข้อมูลซึ่งทำงานเมื่อมีการแทรกข้อความลงในองค์ประกอบ คุณไม่สามารถบอกฉันถึงข้อความย่อยและข้อความย่อยของข้อความย่อยไม่ได้นำข้อมูลเกี่ยวกับการแทรกข้อความไป - คุณแค่บอกฉันเกี่ยวกับองค์ประกอบที่เป็นข้อความที่มีการเปลี่ยนแปลงในข้อความ ตัวอย่างเช่น หากคุณต้องการแน่ใจว่าคุณป้อนเฉพาะอักขระตัวพิมพ์ใหญ่ คุณสามารถระบุตัวสุ่มสำหรับการป้อนข้อมูล ดังที่แสดงด้านล่าง:
อินพุตเป็นมาตรฐานในข้อกำหนด HTML5 และรองรับโดย all เบราว์เซอร์ที่ทันสมัยครีม ไอ. เอฟเฟกต์ที่คล้ายกันสามารถทำได้ใน IE โดยการเปลี่ยนค่าอำนาจขององค์ประกอบข้อความอินพุตหลังจากเพิ่มประเภทย่อยที่ไม่ได้มาตรฐาน การเปลี่ยนแปลงทรัพย์สิน.
ส่งคีย์บอร์ด
Podії คีย์ลงі คีย์อัพ zbudzhuyutsya ถ้า koristuvach กด chi เพื่อปล่อยคีย์บนแป้นพิมพ์ กลิ่นเหม็นถูกสร้างขึ้นสำหรับปุ่มตัวปรับแต่ง ปุ่มฟังก์ชั่น และปุ่มตัวอักษรและตัวเลข ทันทีที่คีย์ถูกลบ ตราบใดที่เปิดโหมดเล่นซ้ำอัตโนมัติ คีย์ย่อยที่ไม่ระบุตัวตนจะถูกสร้างขึ้น คีย์อัพแรกจะปรากฏขึ้น
เป้าหมายของการสนับสนุน รหัสกุญแจจากค่าตัวเลข ราวกับเป็นแป้นกด สำหรับคีย์ที่สร้างอักขระอื่นๆ คีย์โค้ดจะมีอำนาจแทนที่จุดโค้ด Unicode ที่ตรงกับอักขระหลักที่แสดงบนคีย์ คีย์ที่มีตัวอักษรจะสร้างค่า keyCode ที่ตรงกับอักขระที่เป็นตัวพิมพ์ใหญ่เสมอ โดยไม่ขึ้นกับปุ่ม Shift และอักขระเดียวกันจะแสดงบนคีย์
เช่นเดียวกับแป้นตัวเลข ให้สร้างค่า keyCode ที่ตรงกับอักขระตัวเลขที่แสดงบนแป้นเสมอ เพื่อที่ว่าเมื่อคุณกดปุ่ม Shift เพื่อป้อนอักขระอื่น สำหรับคีย์ที่ไม่รับอักขระอื่น พลังของคีย์โค้ดมีความสำคัญมากกว่านั้น ค่าพลังงานของคีย์โค้ดยังไม่ได้รับมาตรฐานแต่อย่างใด อย่างไรก็ตาม, เบราว์เซอร์ต่างๆกลิ่นเหม็นไม่แรงจนไม่สามารถพกพาได้
คล้ายกับวัตถุที่อยู่ใต้เมาส์ วัตถุที่อยู่ใต้แป้นพิมพ์สามารถทรงพลังได้ altKey, ctrlKey, metaKeyі shiftKeyหากค่าถูกตั้งค่าเป็น true ดังนั้นในขณะที่สิ้นสุดการย่อย คีย์ตัวปรับแต่งเริ่มต้นจะถูกละเว้น
Posії keydown และ keyup รวมถึงพลังของ keyCode ได้รับชัยชนะมานานกว่าสิบปีแล้ว แต่ยังไม่ได้รับมาตรฐาน DOM Level 3 Events Draft กำหนดมาตรฐานของประเภทคีย์ลงและคีย์อัพ แต่ไม่ได้กำหนดมาตรฐานพลังของคีย์โค้ด Natomist มีความหมายถึงพลังใหม่ของกุญแจ เนื่องจากมีความผิดในการล้างแค้นที่จะตั้งชื่อกุญแจในแถวที่มองเห็น เมื่อคีย์สั่งสัญลักษณ์ของอีกอัน พลังของคีย์ก็คือการล้างแค้นให้กับสัญลักษณ์นั้น สำหรับปุ่มฟังก์ชัน พลังของคีย์เป็นความรับผิดชอบของแม่ของค่าดังกล่าว เช่น F2, Home หรือ Left
ในขณะที่เขียน แถวของคีย์สิทธิ์เหล่านี้ ตามที่กำหนดโดยมาตรฐาน DOM ระดับ 3 กิจกรรม ยังไม่มีการใช้งานในเบราว์เซอร์ใดๆ ปกป้องเบราว์เซอร์ตามกลไกของ Webkit, Safari และ Chrome มีความหมายในวัตถุที่มีพลัง ตัวระบุคีย์. สำหรับปุ่มฟังก์ชัน ซึ่งคล้ายกับปุ่มเปิด/ปิด พลังของตัวระบุคีย์ไม่ใช่ตัวเลข แต่เป็นแถวของชื่อคีย์ เช่น Shift หรือ Enter สำหรับคีย์ที่ยอมรับอักขระที่เป็นมิตร พลังในการล้างแค้นน้อยกว่าแถวอื่นของการแสดงจุดโค้ดอักขระ Unicode ตัวอย่างเช่น แป้น A ให้ค่า U+0041
ในแอปพลิเคชัน คลาสคีย์แมปจะแสดงอยู่ด้านล่าง ซึ่งแสดงตัวระบุของคีย์ผสม เช่น PageUp, Alt_Z และ ctrl+alt+shift+F5 ในฟังก์ชันบน JavaScript mov โดยคลิกที่คีย์เพื่อกดคีย์ผสมเหล่านี้ การกำหนด Keymap จะถูกส่งไปยังตัวสร้าง Keymap() ของแบบฟอร์ม วัตถุ JavaScriptชื่อของอำนาจที่ควรมอบให้กับตัวระบุของการรวมกันของคีย์และความหมายของอำนาจเหล่านี้ควรได้รับการแก้แค้นด้วยการใช้ฟังก์ชั่น obbrniks การเพิ่มการโยงระยะไกลนั้นอยู่เบื้องหลังเมธอดเพิ่มเติม bind() และ unbind()
วัตถุ Keymap ได้รับการติดตั้งในองค์ประกอบ HTML (วัตถุเอกสารเสียง) ด้วยวิธีตัวช่วย install() ภายใต้ชั่วโมงของการติดตั้งออบเจ็กต์ Keymap สำหรับองค์ประกอบนี้ จะมีการลงทะเบียนสำเนาของคีย์ดาวน์ Shorazu หากกดแป้น รายการตรวจสอบจะเปลี่ยนการมีอยู่ของฟังก์ชัน ซึ่งส่งผลให้มีการรวมกันนี้ ตามหน้าที่ก็เรียกออกมา
Obrobnik ภายใต้พลังคีย์ดาวน์ของคีย์ ซึ่งเป็นที่ยอมรับโดยมาตรฐาน DOM ระดับ 3 กิจกรรม เนื่องจากไม่ใช่ มิฉะนั้น คุณสามารถลองใช้พลัง Webkit ของ keyIdentifier ได้ І เพื่อเป็นทางเลือกสำรอง สำเนาของรหัสพาวเวอร์คีย์ที่ไม่ได้มาตรฐานของผู้ชนะ:
// ฟังก์ชันตัวสร้างฟังก์ชัน Keymap(การผูก) ( this.map = (); // กำหนดตัวระบุ->การผูกหาก (การผูก) ( // คัดลอกไปยังแผนที่การผูกใหม่สำหรับ (ชื่อในการผูก) this.bind (ชื่อ การโยง); ) ) // เชื่อมโยงคำแนะนำกับตัวระบุคีย์จากฟังก์ชันที่กำหนดโดยตัวอย่าง Keymap.prototype.bind = function(key, func) ( this.map = func; ); // เลิกผูกรหัสคีย์ที่ระบุ Keymap.prototype.unbind = function(key) (ลบ this.map;); // ติดตั้งออบเจ็กต์คีย์แมปบนองค์ประกอบ HTML คำใบ้ Keymap.prototype.install = function(องค์ประกอบ) ( var keymap = this; // กำหนดฟังก์ชันตัวจัดการฟังก์ชันตัวจัดการ (เหตุการณ์) ( return keymap.dispatch (event, element) ; ) // ตั้งค่า if (element.addEventListener) element.addEventListener("keydown", handler, false);else if (element.attachEvent) element.attachEvent("onkeydown", handler); คีย์บอร์ด, หมุนวนไปยังการโยง Keymap.prototype.dispatch = function(event, element) ( // ไม่มีชื่อคีย์ตัวแก้ไข, ไม่มีชื่อคีย์ var modifiers = ""; var keyname = null; / / สร้างแถวของ modifiers สำหรับรูปลักษณ์ที่เป็นที่ยอมรับจากอักขระ // เป็นตัวพิมพ์เล็ก, เรียงตามลำดับตัวอักษร ตัวแก้ไข if (event.altKey) += "alt_"; .metaKey) ตัวแก้ไข += "meta_"; if (event.shiftKey) ตัวแก้ไข += "shift_"; // คีย์เหล่านี้ง่ายต่อการจดจำเนื่องจากเป็นพลังของคีย์ มีการใช้งาน // ถูกกำหนดโดยมาตรฐาน DOM ระดับ 3: if (event.key) keyname = event.key;// หากต้องการลบชื่อคีย์ฟังก์ชันออกจาก Safari และ Chrome คุณสามารถ // ชนะพลังของ keyIdentifier อื่น ๆ if(event.keyIdentifier && event.keyIdentifier.substring(0,2) !== "U+" ) ชื่อคีย์ = เหตุการณ์ keyIdentifier;// ในอีกทางหนึ่ง คุณสามารถบิดพลังของ keyCode // และในการแสดงรหัส > im ด้านล่างอื่น ke yname = Keymap.keyCodeToKeyName; // หากชื่อปุ่มไม่ปรากฏขึ้น ให้ไม่ต้องสนใจด้านล่าง // แล้วหมุนคีย์ ถ้า (!keyname) กลับมา; // ตัวระบุคีย์ตามรูปแบบบัญญัติประกอบด้วยชื่อของตัวดัดแปลง // ชื่อคีย์นั้นเป็นตัวพิมพ์เล็ก var keyid = modifiers + keyname.toLowerCase(); // ย้อนกลับ อะไรคือการเชื่อมโยงของตัวระบุคีย์นี้ var handler = this.map; if (ตัวจัดการ) ( // เช่นเดียวกับตัวจัดการสำหรับจำนวนคีย์ เรียกมันออกมา // เรียกใช้ฟังก์ชันตัวจัดการ var retval = handler.call(องค์ประกอบ เหตุการณ์ keyid); if (retval === false) ( if ( event.stopPropagation) event.stopPropagation(); // DOM model else event.cancelBubble = true; // IE model if (event.preventDefault) event.preventDefault(); / / DOM อื่น event.returnValue = false; // IE ) // หมุนค่า ละเว้น handler return retval;))); // ฟังก์ชันเพิ่มเติมของการแปลงตัวระบุคีย์เป็นรูปแบบบัญญัติ // เราจำเป็นต้องแปลงตัวระบุ "meta" เป็น "ctrl" เพื่อแปลง // Meta-C identifier เป็น "Command-C" เป็น คอมพิวเตอร์ Macและใน "Ctrl-C" กับส่วนอื่นๆ ทั้งหมด Keymap.normalize = function(keyid) ( keyid = keyid.toLowerCase(); // ตัวพิมพ์เล็ก var words = keyid.split(/\s+|[\-+_]/); // ตัวดัดแปลงที่แยกจากกัน var ชื่อคีย์ = คำ .pop (); // ชื่อคีย์ - ส่วนที่เหลือของคำชื่อคีย์ = Keymap.aliases || ชื่อคีย์; // ชื่อนามแฝง?words.sort(); .join("_"); // เข้าร่วมทั้งหมดในครั้งเดียว) Keymap.aliases = ( // เปลี่ยนชื่อแทนคีย์หลัก // เป็นชื่อ "อย่างเป็นทางการ" ที่สะกดใน DOM ระดับ 3 และเปลี่ยนรหัสคีย์ // เป็นชื่อด้านล่าง ค่านี้เกิดจากอักขระตัวพิมพ์เล็ก "escape" เท่านั้น: "esc", "return": ป้อน", "delete": "del", "ctrl":"control", "space":"spacebar", "ins":"insert"); // อำนาจเก่าของวัตถุ keyCode ภายใต้คีย์ดาวน์ไม่ได้มาตรฐาน // แต่ค่าที่ใหม่กว่าสามารถเปลี่ยนแปลงได้สำเร็จในเบราว์เซอร์และระบบปฏิบัติการส่วนใหญ่ Keymap.keyCodeToKeyName = ( // คีย์ที่มีคำหรือลูกศรอยู่ 8:"Backspace", 9:"Tab", 13:"Enter", 16:"Shift", 17:"Control", 18:"Alt", 19: "หยุดชั่วคราว", 20: "CapsLock", 27: "Esc", 32: "Spacebar", 33: "PageUp", 34: "PageDown", 35: "End", 36: "Home", 37: "ซ้าย", 38:"ขึ้น", 39:"ขวา", 40:"ลง", 45:"แทรก", 46:"Del", // ปุ่มตัวเลขบนแป้นพิมพ์หลัก (ไม่ใช่ปุ่มรอง) 48: "0 ",49:"1",50:"2",51:"3",52:"4",53:"5",54:"6",55:"7",56:"8 ", 57:"9", // แป้นตามตัวอักษร แสดงความเคารพซึ่งไม่มีความแตกต่างที่นี่ // ตัวพิมพ์ใหญ่และตัวพิมพ์เล็ก 65:"A", 66:"B", 67:"C", 68:"D" , 69 : "E", 70: "F", 71: "G", 72: "H", 73: "I", 74: "J", 75: "K", 76: "L", 77 :" M", 78: "N", 79: "O", 80: "P", 81: "Q", 82: "R", 83: "S", 84: "T", 85: " U" , 86:"V", 87:"W", 88:"X", 89:"Y", 90:"Z", // แป้นตัวเลขบนแป้นพิมพ์เสริมและแป้นที่มีอักขระแยกกัน// ( ไม่รองรับใน Opera) 96:"0",97:"1",98:"2",99:"3",100:"4",101:"5",102:"6",103: "7" ,104:"8", 105:"9", 106:"ทวีคูณ", 107:" บวก", 109:"ลบ", 110:"ทศนิยม", 111:"หาร", // ปุ่มฟังก์ชัน 112: "F1", 113: "F2", 114: "F3", 115: "F5", 118: "F7", 119: "F8", 120: "F9", 121: "F10", 122: "F11", 123: "F12", 125: "F14", 126: "F15", 127: "F16", 128: "F17"", 129:"F18", 130:"F19", 131:" F20", 132:"F22", 134:"F23", 135:"F24", // ไม่จำเป็นต้องใช้ปุ่มที่มีอักขระต่างกันสำหรับการป้อน // เพื่อใช้ปุ่ม Shift // ยัติภังค์ไม่สามารถหักได้ ด้วยวิธีพกพา: FF turn // รหัสเดียวกันกับคีย์การลบ 59:";", 61:"=", 186:";", 187:"=", // Firefox และ Opera หมุน 59,61 188: ",", 190:".", 191:"/", 192:"`", 219:"[", 220:"\", 221:"]", 222: """);
ด้านล่างนี้เป็นตัวอย่างของออบเจ็กต์คีย์แมป:
Window.onload = function() ( var keymap = new Keymap; // สร้าง Keymap object keymap.bind("ctrl+a", // Ctrl+A combo function(event, keyid) ( alert(" you have pressed : " + keyid) ));// อีกหนึ่งการเชื่อมโยง Ctrl + Enter keymap.bind("ctrl+enter", function(event, keyid) ( alert("You have pressed: " + keyid) )); keymap. install (เอกสาร. เนื้อหา); // ติดตั้งวัตถุ Keymap สำหรับเอกสารทั้งหมด);
ธีมของ subdiy มีความสำคัญมากกว่า cіkavaอื่นๆ Zavdyaki їyคุณสามารถทำงานแม้กระทั่งสุนทรพจน์ tskavih จำนวนมาก koristuvachs ดังกล่าวจะถูกจับ Podiya ใน JavaScript- tse pevna diya, จามรี viklikana หรือ koristuvachem หรือเบราว์เซอร์ ตัวอย่างเช่น คุณสามารถคลิกเมาส์บนปุ่ม เลื่อนเมาส์ โฟกัสที่องค์ประกอบ เปลี่ยนค่าในช่องข้อความ เปลี่ยนหน้าต่างหน้าต่างของเบราว์เซอร์ และอื่นๆ
ฉันได้เตรียมตารางที่มีอินพุตที่จำเป็น (อย่างที่ฉันรู้ ยอมรับ) JavaScript. คุณจะทราบก่อนอื่น ฉันจะตั้งชื่อย่อย องค์ประกอบที่สามารถสร้างย่อยเดียวกัน คำอธิบายของมาก podії JavaScript.
โพเดีย | วัตถุ | เหตุแห่งการแก้แค้น |
การทำแท้ง | ภาพ | กำลังโหลดการจับภาพใหม่ |
เบลอ | เสริมพลังธาตุ | |
เปลี่ยน | FileUpload, Select, Text, Textarea | การเปลี่ยนแปลงของมูลค่า |
คลิก | พื้นที่, ปุ่ม, ช่องทำเครื่องหมาย, เอกสาร, ลิงค์, วิทยุ, รีเซ็ต, ส่ง | คลิกเมาส์ที่องค์ประกอบ |
DblClick | พื้นที่, เอกสาร, ลิงค์ | ย้ายคลิกที่องค์ประกอบ |
DragDrop | หน้าต่าง | ไปที่หน้าต่างของเบราว์เซอร์ |
จุดสนใจ | ปุ่ม, ช่องทำเครื่องหมาย, FileUpload, เฟรม, เลเยอร์, รหัสผ่าน, วิทยุ, รีเซ็ต, เลือก, ส่ง, ข้อความ, Textarea, หน้าต่าง | ตั้งโฟกัสที่องค์ประกอบ |
คีย์ลง | การกดแป้นบนแป้นพิมพ์ | |
กดปุ่ม | เอกสาร รูปภาพ ลิงก์ Textarea | ปุ่ม Utrimanya บนแป้นพิมพ์ |
คีย์ขึ้น | เอกสาร รูปภาพ ลิงก์ Textarea | ปล่อยปุ่มบนแป้นพิมพ์ |
โหลด | เอกสาร รูปภาพ เลเยอร์ หน้าต่าง | |
เมาส์ลง | ปุ่ม เอกสาร ลิงค์ | กดปุ่มเมาส์ |
MouseMove | หน้าต่าง | มิชาในภาษารัสเซีย |
mouseout | พื้นที่ เลเยอร์ ลิงค์ | มิชาไปไกลกว่าองค์ประกอบ |
เมาส์โอเวอร์ | พื้นที่ เลเยอร์ ลิงค์ | Misha อยู่เหนือองค์ประกอบ |
mouseup | ปุ่ม เอกสาร ลิงค์ | ปล่อยปุ่มเมาส์ |
เคลื่อนไหว | กรอบ | ย้ายองค์ประกอบ |
รีเซ็ต | แบบฟอร์ม | สกิดนยา ฟอร์ม |
ปรับขนาด | กรอบหน้าต่าง | Zmina rozmiriv |
เลือก | ข้อความ Textarea | เห็นข้อความ |
ส่ง | แบบฟอร์ม | การถ่ายโอนข้อมูล |
ยกเลิกการโหลด | หน้าต่าง | วิวฝั่งของกระแสน้ำ |
ทีนี้ลองคิดดู จามรี แท็ก javascript. Іsnuyut เรียกว่า โพเดีย. Obrobniksอย่างไรก็ตาม พวกเขากำหนดสิ่งที่ควรทำในกรณีที่เพลงมีความผิด JavaScript Pod Coders maєดูฉูดฉาด:
OnNamePodії
Tobto back to back ไปที่คำนำหน้า บน"และให้ ชื่อพ็อด, ตัวอย่างเช่น, ดังนั้น โพเดีย: onFocus, เมื่อคลิก, onSubmitและจนถึงตอนนี้ ฉันไม่คิดว่ามี viniclo อยู่ที่นี่ และตอนนี้อาหารเขม่า: " จะแฮ็คสำหรับ JavaScript ได้อย่างไรพื้นที่แห่งความซบเซาของพวกเขานั้นยิ่งใหญ่และเราสามารถดูงานทีละอย่างกับคุณได้ ด้านข้างมีอักษรสามตัว ไซลันของผิวหนังvіdpovіdaєสำหรับพื้นหลังสีที่ต่างกัน (สมมติว่า ขาว เหลือง และเขียว) สีของพื้นหลังเปลี่ยนไป: สีของพื้นหลังจะเปลี่ยนเป็นสีสำหรับการโปรโมต หากเมาส์คลิกเพื่อดูข้อความ
บิลลี่
Zhovtiy
Zeleny
มาจัดการกับสคริปต์นี้กันดีกว่า ด้าน HTMLด้วยการสนับสนุน JavaScriptі css(พูดอีกอย่างคือ ก้น DHTML). เริ่มเดินถอยหลัง แท็ก HTMLที่ใครคนหนึ่งเริ่มต้น ไม่ว่าจะเป็น ด้าน HTML. ให้เราสร้างสไตล์เพื่อให้แน่ใจว่าเราใส่สีฟ้า เก้าอี้ใต้เท้าที่ด้านนี้ และหมีมองไปที่พวกเขา "ตัวชี้" คุณอาจพูดว่า: "จำเป็นต้องกำหนดสไตล์ตอนนี้หรือไม่? ถูกต้อง โพซิลานเนีย แต่เรามีโพซิลานเหมือนไม่มี (ถึงแม้จะไม่มีคุณลักษณะก็ตาม) hrefในวิทยานิพนธ์) จากนั้น กลิ่นเหม็นจะได้รับการอภัยเป็นข้อความสีดำสำหรับการเลื่อนตำแหน่ง นั่นเป็นเหตุผลที่รูปแบบของ obov'yazkovy คุณสามารถจัดระเบียบโยคะและประหลาดใจกับสิ่งที่จะเกิดขึ้น และยิ่งสั้นลง href แอตทริบิวต์(ความหมาย Be-yakim แม้จะว่างเปล่า) และอธิบายว่าทำไมสคริปต์ถึงหยุดทำงาน มาเริ่มกันเลย JavaScript. เราสร้างความเปลี่ยนแปลง default_colorคิดยังไงกับสีโปรโมท. มีสามฟังก์ชั่น:
การทำงาน setTempColor() Vіdpovіdaєสำหรับการเปลี่ยนสี timchasova
การทำงาน setDefaultColor() Vіdpovіdaєสำหรับการเปลี่ยนสีสำหรับโปรโมชั่น
การทำงาน ค่าเริ่มต้นสี()ฟื้นฟูสีขี้เถ้าเพื่อส่งเสริม
ไปที่จุดแข็งสำหรับคุณสมบัติของจามรี เครื่องเก็บตัวอย่าง. เมื่อชี้หมีไปที่คำขอ ให้โทษ โพเดีย MouseOverอย่างชัดเจน, onMouseOverเรียกฟังก์ชัน setTempColor()มันส่งผ่านพารามิเตอร์อื่น เมื่อคุณเอาหมีออกจากธาตุ ให้โทษ Pod_MouseOutแล้วโทรออก ฟังก์ชัน defaultColor(), วิธีปล้นสีของโลกให้เป็นสีสำหรับล็อค ฉัน nareshti เมื่อคลิกหมีเพื่อขอความช่วยเหลือ ( ตัวจัดการ onClick) ฟังก์ชั่นการโทร setDefaultColor(), วิธีตั้งค่าสี, งานสำหรับพารามิเตอร์ของสีเป็นพื้นหลังสำหรับคำอธิบายภาพ จามรี bachite ทุกอย่างจบง่าย
Tse buv หลักการของ vikoristannya podіy ใน JavaScriptและปล่อยให้ทุกอย่างนอนลงตามจินตนาการของคุณเท่านั้น!
การประมวลผลฝัก
โปรแกรมไคลเอนต์บน JavaScript บนมือถือจะขึ้นอยู่กับรูปแบบการเขียนโปรแกรม หากโปรแกรมนั้นรองรับโดยโปรแกรมย่อย ด้วยรูปแบบการเขียนโปรแกรมนี้ เว็บเบราว์เซอร์จะสร้าง Pod หากมีองค์ประกอบที่เป็นไปได้ในเอกสาร ตัวอย่างเช่น เว็บเบราว์เซอร์สร้างพ็อด การบันทึกเอกสารเสร็จสิ้น ส่งข้อความไปยังเมาส์ หรือกดปุ่มบนแป้นพิมพ์
หากโปรแกรม JavaScript เรียกใช้ประเภทย่อยแรกสำหรับองค์ประกอบแรกของเอกสาร โปรแกรมสามารถลงทะเบียนฟังก์ชันอย่างน้อยหนึ่งฟังก์ชันที่จะถูกเรียกใช้เมื่อมีการเรียกประเภทย่อย แจ้งให้เราทราบว่าอะไรไม่ใช่คุณลักษณะเฉพาะของการเขียนโปรแกรมเว็บ: โปรแกรมทั้งหมด ส่วนต่อประสานกราฟิก koristuvacha deyut ตัวเองอยู่ในอันดับดังกล่าว - กลิ่นเหม็นตรวจสอบอย่างต่อเนื่องในขณะที่มันจะเป็น (ตรวจสอบที่ด้านล่าง) และดูผู้ที่เป็น
ประเภทพ็อด- ลำดับซึ่งหมายถึงประเภทของงาน DIY ที่ทำให้เกิดการขึ้นโพเดียม ตัวอย่างเช่น ประเภท "mousemove" หมายความว่าผู้พูดได้ย้ายอินพุตของเมาส์ ประเภท "คีย์ลง" หมายความว่ามีการกดปุ่มบนแป้นพิมพ์ และประเภท "โหลด" หมายความว่ามีการโหลดเอกสาร (หรือทรัพยากรอื่น) จากการวัด Oskіlkiประเภทpodії - มันเป็นแค่แถวบางครั้งโยคะก็ถูกเรียกตามชื่อของpodії
วัตถุประสงค์- tse object ซึ่งไวนิลมีโพเดียหรือที่ผูกโพเดีย หากคุณพูดถึงโพเดีย ให้ออกเสียงประเภทและวิธีการของโพเดีย ตัวอย่างเช่น ภายใต้ "โหลด" ของวัตถุ Window หรือภายใต้องค์ประกอบ "คลิก"
Obrobnik podії- tse funktsіya, จามรี obroblyaє, chi v_dgukuєtsya podіya โปรแกรมต้องลงทะเบียนการทำงานของตัวรวบรวมพ็อดในเว็บเบราว์เซอร์โดยระบุประเภทของพ็อดที่กำหนดเป้าหมาย หากวัตถุเป้าหมายที่ระบุมีประเภทย่อยของประเภทที่ระบุ เบราว์เซอร์จะเปลี่ยนชื่อ หากมีการเรียก podobniks สำหรับวัตถุใด ๆ บางครั้งมีการกล่าวว่าเบราว์เซอร์ได้ "ทำลาย" หรือ "สร้าง" พ็อด
วัตถุที่ส่ง- tse ob'єkt, po'yazaniya z ร้องเพลงpodієyuฉันstіtіtіnformatsiyu pro tsiu podіyu ออบเจ็กต์ Pod จะถูกส่งต่อไปยังฟังก์ชันตัวจัดการ Pod เป็นอาร์กิวเมนต์ (crim IE8 และอื่นๆ รุ่นแรกๆ de ob'єkt podіїใช้ได้เฉพาะในมุมมองของเหตุการณ์การเปลี่ยนแปลงทั่วโลก) วัตถุหนวดอยู่ภายใต้อำนาจ พิมพ์ซึ่งหมายถึงประเภทของการแบ่งอำนาจนั้น เป้า, สิ่งที่กำหนดวิธีการยื่น.
สำหรับผิวประเภท pov'yazanom ob'ektіหน่วยงานpodіїvyznaєtsyanabіr ตัวอย่างเช่น วัตถุที่กดที่ด้านล่างของเมาส์ รวมถึงพิกัดของเมาส์และวัตถุที่กดที่ด้านล่างของแป้นพิมพ์ เพื่อลบข้อมูลเกี่ยวกับแป้นที่ถูกกดและเกี่ยวกับตัวปรับแต่งแป้นกด สำหรับประเภทย่อยที่หลากหลาย จะมีการกำหนดเฉพาะพาวเวอร์มาตรฐาน เช่น ชนิดและเป้าหมาย และจะไม่มีการถ่ายโอนข้อมูลเพิ่มเติม ข้อมูลสีน้ำตาล. สำหรับการแบ่งประเภทดังกล่าว การมีอยู่ของส่วนย่อยเป็นสิ่งสำคัญ และข้อมูลอื่นๆ ไม่สำคัญ
ก้นกว้าง- กระบวนการ tse ในเวลาที่เบราว์เซอร์ใช้งานไม่ได้ สำหรับบางอ็อบเจ็กต์ การคลิกถัดไปและแท็กนั้นถูกต้อง ในกรณีต่างๆ ที่กำหนดให้กับออบเจ็กต์เดียว (เช่น "โหลด" ของออบเจ็กต์ Window) ความต้องการสำหรับวันที่ขยายออกไป อย่างไรก็ตาม หากคุณตำหนิเพลงในองค์ประกอบของเอกสาร เพลงนั้นขยายหรือรวมเข้าด้วยกัน ขึ้นเนินไปตามโครงสร้างเอกสาร