เอฟเฟกต์ภาพเคลื่อนไหวที่น่าประทับใจ ตัวอย่างการใช้ jQuery ตัวอย่างคำอธิบาย Jquery
JQuery เป็น JavaScript Framework ที่ยอดเยี่ยมที่สร้างความประทับใจด้วยการเข้าใจง่ายและใช้งานง่าย แต่การเรียนรู้ต้องเริ่มต้นที่ไหนสักแห่ง และความคิดเห็นส่วนตัวของฉันคือควรเริ่มต้นด้วยตัวอย่างที่ชัดเจนที่สุด แล้วมันจะดำเนินต่อไป...
เนื้อหาของบทความนี้รวมอยู่ในหนังสือเรียน "" หนังสือเรียนนี้แจกฟรีและมาพร้อมกับการโต้ตอบ
jQuery ทำงานอย่างไร?ก่อนอื่นคุณจะต้องมีเฟรมเวิร์กเอง คุณสามารถดาวน์โหลดได้จากหน้าแรกของโปรเจ็กต์ จากนั้นเริ่มต้น:
แผนภาพต่อไปนี้จะช่วยให้คุณเข้าใจประเด็นหลัก:
วิธีรับองค์ประกอบโดยใช้ jQueryเพื่อให้เข้าใจถึงวิธีการทำงานของ Selector คุณยังต้องมีความรู้พื้นฐานเกี่ยวกับ CSS เนื่องจาก... ตัวเลือก jQuery ขึ้นอยู่กับหลักการ CSS:
- $(“#header”) – รับองค์ประกอบที่มี id="header"
- $(“h3”) – รับองค์ประกอบทั้งหมด
- $(“div#content .photo”) – รับองค์ประกอบทั้งหมดที่มี class =”photo” ซึ่งอยู่ในองค์ประกอบ div ด้วย id="content"
- $("ul li") – รับทั้งหมด
- องค์ประกอบจากรายการ
- $(“ul li:first”) – รับเฉพาะองค์ประกอบแรก
- จากรายการ แผงดึงออก
เริ่มจากตัวอย่างง่ายๆ กันก่อน - แผงสไลด์ มันจะเลื่อนขึ้น/ลงเมื่อคุณคลิกที่ลิงค์ (ดู)
เราจะดำเนินการดังนี้: โดยการคลิกที่ลิงก์ เราจะเปลี่ยนคลาส (ระหว่าง "ใช้งานอยู่" และ "btn-slide") และแผงที่มี id = "panel" จะเลื่อนออก/ซ่อน (คลาส “active” เปลี่ยนตำแหน่งของภาพพื้นหลัง โปรดดูไฟล์ CSS ในไฟล์แนบ)$(document).ready(function())( $(".btn-slide").click(function())( $("#panel").slideToggle("slow"); $(this).toggleClass (" คล่องแคล่ว"); )); ));
การหายตัวไปอย่างมหัศจรรย์ตัวอย่างนี้จะแสดงให้เห็นว่าคุณสามารถลบองค์ประกอบที่ละลายได้อย่างสวยงามและง่ายดายเพียงใด (ดู):
เมื่อเราคลิกที่ภาพ องค์ประกอบหลักจะพบได้และความทึบของมันจะค่อยๆ เปลี่ยนจาก opacity=1.0 เป็น opacity=hide:
$(document).ready(function())( $(".pane .delete").click(function())( $(this).parents(".pane").animate(( ความทึบ: "hide" ), "ช้า");
แอนิเมชั่นที่เกี่ยวข้องตอนนี้ตัวอย่างมีความซับซ้อนมากขึ้น แต่จะช่วยให้คุณเข้าใจ jQuery ได้ดีขึ้น โค้ดเพียงไม่กี่บรรทัดจะทำให้สี่เหลี่ยมจัตุรัสเคลื่อนที่ เปลี่ยนขนาด และความโปร่งใส (ซม. ):
บรรทัด 0: เมื่อเพจโหลดแล้ว (DOM พร้อมสำหรับการจัดการ)
บรรทัดที่ 1: เชื่อมโยงกับเหตุการณ์การคลิกขององค์ประกอบ
บรรทัดที่ 2: จัดการองค์ประกอบ - ลดความโปร่งใสเป็น 0.1 เพิ่มตำแหน่งทางซ้ายอีก 400px ด้วยความเร็ว 1200 (มิลลิวินาที)
บรรทัดที่ 3: จากนั้นค่อยๆ เปลี่ยนพารามิเตอร์ต่อไปนี้: ความทึบ=0.4, ด้านบน=160px, ความสูง=20, ความกว้าง=20; ความเร็วของภาพเคลื่อนไหวจะถูกระบุโดยพารามิเตอร์ตัวที่สอง: "ช้า", "ปกติ", "เร็ว" หรือหน่วยเป็นมิลลิวินาที
บรรทัดที่ 4: จากนั้น ความทึบ=1, ซ้าย=0, สูง=100, ความกว้าง=100, ความเร็ว – “ช้า”
บรรทัดที่ 5: จากนั้นบน=0 ความเร็ว – “เร็ว”
บรรทัดที่ 6: จากนั้นเลื่อนขึ้น (ด้วยความเร็วแอนิเมชั่นเริ่มต้น - “ปกติ”)
บรรทัดที่ 7: จากนั้นเลื่อนลง ความเร็ว – “ช้า”
บรรทัดที่ 8: คืนค่าเท็จเพื่อให้เบราว์เซอร์ไม่ติดตามลิงก์$(document).ready(function())( $(".run").click(function())( $("#box").animate((ความทึบ: "0.1", ซ้าย: "+=400 ") , 1200) .animate((ความทึบ: "0.4", ด้านบน: "+=160", ความสูง: "20", ความกว้าง: "20"), "ช้า") .animate((ความทึบ: "1", ซ้าย: "0" ความสูง: "100" ความกว้าง: "100") "ช้า") .animate((top: "0"), "fast") .slideUp() .slideDown("slow") กลับ เท็จ; )); ));
หีบเพลง #1ตัวอย่างการใช้งานหีบเพลง (ซม. )
เรามาเริ่มการซักถามกันดีกว่า:
บรรทัดแรกเราเพิ่มคลาส "active" ให้กับองค์ประกอบแรกภายใน (คลาส "active" มีหน้าที่รับผิดชอบในการวางตำแหน่งภาพพื้นหลัง - ไอคอนที่มีลูกศร) ในบรรทัดที่สองเราซ่อนทุกสิ่งที่ไม่ใช่บรรทัดแรกองค์ประกอบภายใน.
เมื่อคลิกส่วนหัว องค์ประกอบถัดไปจะอยู่ในนั้นเอฟเฟกต์ SlideToggle จะถูกนำไปใช้ จากนั้นกับองค์ประกอบอื่นๆ ทั้งหมด
เอฟเฟกต์ SlideUp จะถูกนำไปใช้ การดำเนินการต่อไปนี้จะเปลี่ยนคลาสส่วนหัวเป็น "active" จากนั้นเราจะค้นหาส่วนหัวอื่นๆ ทั้งหมดและลบคลาส "active" ออกจากส่วนหัวเหล่านั้น
$(document).ready(function())( $(".accordion h3:first").addClass("active"); $(".accordion p:not(:first)").hide(); $ ( ".accordion h3").click(function())( $(this).next("p").slideToggle("slow") .siblings("p:visible").slideUp("slow"); $( นี้).toggleClass("ใช้งานอยู่"); $(นี้).siblings("h3").removeClass("ใช้งานอยู่" ));
หีบเพลง #2ตัวอย่างนี้คล้ายกับตัวอย่างก่อนหน้า ข้อแตกต่างเพียงอย่างเดียวคือเราระบุแผงที่เปิดตามค่าเริ่มต้น (ซม. )
ใน CSS เราได้ระบุไว้สำหรับองค์ประกอบทั้งหมด
จอแสดงผล:ไม่มี ตอนนี้เราต้องเปิดแผงที่สาม เพื่อทำเช่นนี้ เราสามารถเขียน $(“.accordion2 p”).eq(2).show() ต่อไปนี้ โดยที่ eq แสดงถึงความเท่าเทียมกัน โปรดจำไว้ว่าการจัดทำดัชนีเริ่มต้นจากศูนย์:
$(document).ready(function())( $(".accordion2 h3").eq(2).addClass("active"); $(".accordion2 p").eq(2).show() ; $(".accordion2 h3").click(function())( $(this).next("p").slideToggle("slow") .siblings("p:visible").slideUp("ช้า" ); $(this).toggleClass("active"); $(this).siblings("h3").removeClass("active" ));
แอนิเมชันสำหรับเหตุการณ์โฮเวอร์ #1ตัวอย่างนี้จะช่วยคุณสร้างแอนิเมชั่นที่สวยงามมากสำหรับเหตุการณ์โฮเวอร์ (ฉันหวังว่าคุณจะรู้ว่ามันคืออะไร) (ดู):
เมื่อคุณวางเมาส์เหนือรายการเมนู (วางเมาส์เหนือ) รายการนั้นจะค้นหารายการถัดไปและทำให้ความโปร่งใสและตำแหน่งของรายการเคลื่อนไหว:
$(document).ready(function())( $(".menu a").hover(function() ( $(this).next("em").animate((ความทึบ: "show", top: " -75"), "slow"); ), function() ( $(this).next("em").animate((ความทึบ: "hide", top: "-85"), "fast") ; ) ));
แอนิเมชันสำหรับเหตุการณ์โฮเวอร์ #2ตัวอย่างนี้ซับซ้อนกว่าตัวอย่างก่อนหน้านี้เล็กน้อย: แอตทริบิวต์ linktitle ใช้เพื่อสร้างคำแนะนำเครื่องมือ (ดู)
ก่อนอื่น เรามาเพิ่มแท็กให้กับแต่ละองค์ประกอบกันก่อน - เมื่อเหตุการณ์การวางเมาส์โอเวอร์เกิดขึ้น เราจะนำข้อความจากแอตทริบิวต์ “thetitle” และเก็บไว้ในตัวแปร “hoverText” จากนั้นข้อความนี้จะถูกแทรกลงในแท็ก:$(document).ready(function())( $(".menu2 a").append(""); $(".menu2 a").hover(function() ( $(this).find(" em ").animate((ความทึบ: "show", top: "-75"), "slow"); var hoverText = $(this).attr("title"); $(this).find("em " ).text(hoverText); ), function() ( $(this).find("em").animate((ความทึบ: "hide", top: "-85"), "fast"); )) ; ));
บล็อกที่คลิกได้ตัวอย่างนี้สาธิตวิธีทำให้บล็อกข้อความสามารถคลิกได้ ไม่ใช่แค่ลิงก์ (ดู):
มาสร้างรายการกันเถอะ- ด้วย class class="pane-list" และเราต้องการสร้างองค์ประกอบ
- คลิกได้ ขั้นแรก เรามาเชื่อมโยงกับเหตุการณ์การคลิกสำหรับองค์ประกอบ “.pane-list li” เมื่อผู้ใช้คลิกที่รายการ ฟังก์ชั่นของเราจะค้นหาแท็ก และจะเปลี่ยนเส้นทางไปยังหน้าที่ระบุในแอตทริบิวต์ href
$(document).ready(function())( $(".pane-list li").click(function())( window.location=$(this).find("a").attr("href ") ; กลับเท็จ; ));
แผงพับทีนี้มารวมตัวอย่างก่อนหน้านี้กันสักหน่อยและสร้างชุดแผงพับ (คล้ายกับวิธีจัดระเบียบกล่องจดหมายใน Gmail) (ซม. )
- ซ่อนองค์ประกอบทั้งหมดหลังจากองค์ประกอบแรก
- ซ่อนองค์ประกอบทั้งหมด
- หลังจากที่ห้า
- คลิกที่
- คลิกที่
- คลิกที่ เมธอด SlideDown ก็เรียกสำหรับทุกคนเช่นกัน
- หลังจากที่ห้า
- คลิกที่ – ซ่อนองค์ประกอบและแสดงมัน
ฉันคิดว่าผู้อ่านหลายคนได้พบกับส่วนผู้ดูแลระบบของ WordPress หรือแก้ไขความคิดเห็น มาลองทำสิ่งที่คล้ายกันกัน เพื่อให้สีพื้นหลังเคลื่อนไหว เราจำเป็นต้องมีปลั๊กอิน jQuery ที่เหมาะสม (ซม. )
- เพิ่มคลาส "alt" ให้กับแต่ละองค์ประกอบคู่ (คลาสนี้จะเปลี่ยนสีพื้นหลังขององค์ประกอบ)
- คลิกที่ เริ่มต้นการปรากฏตัวของข้อความ (การแจ้งเตือน) และภาพเคลื่อนไหวของสีพื้นหลังและความโปร่งใส (สีพื้นหลังและความทึบ) ก็เกิดขึ้นเช่นกัน
- คลิกที่ – ทำให้เกิดภาพเคลื่อนไหวพื้นหลัง (สีเปลี่ยนเป็นสีเหลืองและด้านหลัง) และเพิ่มคลาส “สแปม”
- คลิกที่ – ทำให้ภาพเคลื่อนไหวพื้นหลัง (สีเปลี่ยนเป็นสีเขียวและด้านหลัง) และลบคลาส "สแปม"
- คลิกที่ – ทำให้พื้นหลังเคลื่อนไหว (สีเปลี่ยนเป็นสีแดง) และเปลี่ยนพารามิเตอร์ “ความทึบ” เป็น “ซ่อน”
ตัวอย่างที่ง่ายที่สุดของการใช้แกลเลอรีโดยไม่ต้องโหลดหน้าซ้ำ (ซม. )
ขั้นแรก ให้เพิ่มแท็กที่ส่วนหัว
โดยคลิกที่ภาพในเราทำตามขั้นตอนต่อไปนี้
การใช้ jQuery ช่วยให้คุณสร้างสคริปต์ได้เร็วและมีประสิทธิภาพยิ่งขึ้น
เจคิวรีคืออะไร?jQuery เป็นไลบรารีที่ทำให้การเขียนโค้ด JavaScript ง่ายและรวดเร็วยิ่งขึ้น
คำขวัญ jQuery "เขียนให้น้อยลง ทำมากขึ้น"(เขียนให้น้อยลง ทำมากขึ้น) สะท้อนถึงจุดประสงค์หลัก
jQuery ช่วยให้คุณสร้างภาพเคลื่อนไหว ตัวจัดการเหตุการณ์ และทำให้การเลือกองค์ประกอบใน DOM และสร้างคำขอ AJAX ง่ายขึ้นมาก
ไลบรารีนี้ใช้งานได้กับเบราว์เซอร์ทั้งหมด ( IE 6.0+, FF 2.0+, Safari 3.0+, Opera 9.0+, Chrome- ซึ่งหมายความว่าคุณไม่จำเป็นต้องกังวลเกี่ยวกับความเข้ากันได้ของโค้ด JavaScript ข้ามเบราว์เซอร์อีกต่อไป
มีการเขียนปลั๊กอินจำนวนมากสำหรับ jQuery ซึ่งช่วยให้คุณสามารถขยายขีดความสามารถของมันให้ดียิ่งขึ้นไปอีก
ตัวอย่าง jQuery$(document).ready(function())( $(":button").click(function())( $(":button").hide(); $("#wrap1").addClass(" เพิ่ม" ); $("#wrap1").animate((height:280),2000); $("#wrap1").animate((width:400),2000); $("#wrap1"). เคลื่อนไหว( (ช่องว่างภายใน:20),2000,function())( $("#text1").hide(2000,function())($("#text2").show(2000);) )) ; ));
ดูด่วน
การเพิ่ม jQuery ให้กับเพจในการเริ่มใช้ jQuery คุณต้องมี:
- ดาวน์โหลดได้จากเว็บไซต์อย่างเป็นทางการ jQuery มีสองเวอร์ชัน: สำหรับใช้ในแอปพลิเคชันสำเร็จรูป (การผลิต) และสำหรับการพัฒนา (การพัฒนา) เวอร์ชันการพัฒนาประกอบด้วยความคิดเห็นและโค้ดที่มีโครงสร้าง เวอร์ชันย่อไม่มีความคิดเห็นและโค้ดไม่มีโครงสร้าง แต่ใช้พื้นที่น้อยกว่า ดังนั้นหน้าเว็บที่มีเวอร์ชันนี้จะโหลดเร็วขึ้น หลังจากที่คุณเลือกเวอร์ชันที่เหมาะสมแล้ว ให้คลิกที่ปุ่ม "ดาวน์โหลด (jQuery)"
- เพิ่มลงในเพจ เมื่อต้องการทำเช่นนี้ ต้องเพิ่มรหัสต่อไปนี้ลงในหน้าในส่วนหัว:
สำหรับผู้ที่ไม่สามารถ (หรือไม่ต้องการ) ดาวน์โหลด jQuery ได้ด้วยเหตุผลบางประการ มีวิธีอื่นในการใช้ไลบรารีที่ Google จัดทำจากระยะไกล
หากต้องการใช้ jQuery จากระยะไกล เพียงเพิ่มโค้ดต่อไปนี้ลงในส่วนหัวของหน้า:
โปรดทราบ: เมื่อทำสิ่งนี้และแบบฝึกหัดต่อไปนี้ เราขอแนะนำให้คุณปิดตัวดีบักเกอร์ (เช่น Firebug) ซึ่งอาจให้คำแนะนำได้ ในระหว่างการทำงานมอบหมายให้เสร็จสิ้น คุณต้องค้นหาและแก้ไขข้อผิดพลาดเพื่อวัตถุประสงค์ทางการศึกษาด้วยตนเอง
มีการระบุรหัสภารกิจ 1 jQuery บนเพจ แต่ใช้งานไม่ได้เนื่องจากไฟล์ไลบรารี jquery.js ที่จำเป็นไม่ได้เชื่อมต่ออยู่ เชื่อมต่อ jquery.js จากระยะไกล (โดยใช้บริการของ Google) เพื่อ "แก้ไข" โค้ด
แน่นอนว่าคุณคงเคยได้ยินเกี่ยวกับไลบรารี Javascript ที่ยอดเยี่ยมที่เรียกว่า jQuery มาก่อน jQuery คืออะไรกันแน่?
จะทำให้ชีวิตของนักพัฒนาเว็บง่ายขึ้นได้อย่างไร? จะเริ่มต้นที่ไหน? jQuery ทำให้การเขียน Javascript สนุกและง่ายขึ้น ด้วยไลบรารีนี้ แง่มุมที่ค่อนข้างซับซ้อนของ Javascript สามารถนำไปใช้กับแอปพลิเคชันใดๆ ได้อย่างง่ายดาย
บทเรียนวันนี้จะบอกวิธีเริ่มต้นใช้งาน jQuery และวิธีเขียนสคริปต์แรกของคุณ
เจคิวรีคืออะไร?
jQuery เป็นไลบรารี Javascript ที่มีน้ำหนักเบามาก (บางอันเรียกว่าเฟรมเวิร์ก) ซึ่งช่วยลดความยุ่งยากในการเขียนโค้ด Javascript มันมีคุณสมบัติที่ทรงพลังมากมาย เช่น การติดตาม DOM การเพิ่มเอฟเฟกต์และภาพเคลื่อนไหวที่สวยงามให้กับองค์ประกอบ เทคนิคและวิธีการ Ajax สุดง่าย ในหน้าหลักของไซต์ jQuery คำอธิบายที่ถูกต้องที่สุดในความคิดของฉัน:
jQuery เป็นไลบรารีที่รวดเร็วและกระชับซึ่งช่วยให้การจัดการเหตุการณ์ แอนิเมชั่น และการโต้ตอบ Ajax ง่ายขึ้น เพื่อการพัฒนาเว็บที่รวดเร็วยิ่งขึ้น jQuery ได้รับการออกแบบมาเพื่อเปลี่ยนวิธีการเขียน JavaScript
jQuery มีประโยชน์อย่างไร?
มาดูข้อดีและคุณสมบัติของเฟรมเวิร์กนี้กัน:
จำนวนโค้ด (จำเป็นสำหรับสคริปต์ในการทำงาน) ลดลงอย่างมากเมื่อเทียบกับ JavaScript ซึ่งหมายความว่าใช้เวลาน้อยลงและสามารถอ่านโค้ดได้มากขึ้น บทความที่เหลือจะดูตัวอย่างบางส่วน
เข้าใจโค้ดได้ง่ายกว่ามาก (ต่างจาก JavaScript) ในโลกของเรา ยิ่งคุณเสร็จสิ้นกระบวนการเขียนโปรแกรมเร็วเท่าไหร่ คุณก็ยิ่งมีเวลาให้กับเป้าหมายอื่นๆ มากขึ้นเท่านั้น
เอกสารที่สะดวกมากและชุมชนที่กระตือรือร้น พร้อมให้ความช่วยเหลือเสมอหากจำเป็น
การใช้ Ajax จะง่ายขึ้นมาก คุณต้องการโค้ดเพียง 5 บรรทัด (บางครั้งก็น้อยกว่านั้น) เพื่อสร้างคำขอ Ajax แบบง่าย
ปลั๊กอินจำนวนมากที่คุณสามารถทำอะไรได้เกือบทุกอย่าง
jQuery สนุกดี :)
จะเริ่มต้นอย่างไร?
ก่อนอื่น คุณต้องไปที่หน้าหลักของเว็บไซต์ jQuery อย่างเป็นทางการ และดาวน์โหลดเฟรมเวิร์กเวอร์ชันล่าสุดนี้ หลังจากดาวน์โหลด คุณจะต้องอัปโหลดไฟล์นี้ไปยังโฮสติ้งของคุณ และเขียนลิงก์ไปยังไฟล์นี้ในส่วนหัวของเอกสาร
หรือคุณสามารถใช้ความช่วยเหลือของ Google ผู้ยิ่งใหญ่และใส่ลิงก์ไปยังเซิร์ฟเวอร์ซึ่งมีเฟรมเวิร์กเวอร์ชันล่าสุดอยู่เสมอ สามารถพบได้ลิงค์ที่จำเป็น
เอกสารพร้อมหรือยัง?
ในการรันสคริปต์ jQuery แรกของเรา เราจำเป็นต้องรวมสคริปต์ทั้งหมดของเราไว้ในฟังก์ชัน ฟังก์ชั่นนี้จะดำเนินการเมื่อ DOM พร้อมอย่างสมบูรณ์ (เมื่อ “เอกสารพร้อม” - การแปลตามตัวอักษรจากภาษาอังกฤษ) โปรดทราบว่าสิ่งนี้คล้ายกับเหตุการณ์ 'onload' ยอดนิยมมาก แต่ก็ไม่เหมือนกัน ลองดูตัวอย่าง:
$(document).ready(function())( //โค้ดที่นี่ ));
ข้างต้น เรากำลังบอกให้ jQuery รันโค้ดใดๆ ภายในฟังก์ชัน โดยที่ DOM พร้อมใช้งานอย่างสมบูรณ์ สิ่งนี้มีข้อดีอยู่ แม้ว่าหลายคนอาจไม่ชัดเจนก็ตาม ก่อนอื่น โดยใช้เทคนิคนี้ เราจะแยก Javascript ออกจาก HTML โดยสิ้นเชิง ประการที่สอง เราไม่จำเป็นต้องรอให้โหลดหน้าเว็บจนเต็ม DOM ก็เพียงพอที่จะโหลดแล้ว
สำหรับผู้เขียนโค้ดที่ขี้เกียจหรือผู้ที่นับตัวอักษรทุกตัว คุณสามารถย่อโค้ดด้านบนให้สั้นลงได้อีก:
$(function())( //โค้ดที่นี่ ));
สคริปต์ jQuery แรกของคุณ
เรารู้วิธีอ้างอิงห้องสมุดแล้ว เรายังเข้าใจเพียงเล็กน้อยเกี่ยวกับฟังก์ชัน document.ready ตอนนี้ได้เวลาเขียนสคริปต์ง่ายๆ แล้ว
มาทำให้มันง่ายที่สุดกันเถอะ สำหรับตัวอย่างนี้ เรามาสร้างหน้าด้วยข้อความและเครื่องหมายคำพูดที่ส่วนท้าย เราต้องการแสดงใบเสนอราคาเฉพาะในกรณีที่ผู้ใช้คลิกที่ปุ่ม ดูโค้ดที่จำเป็นสำหรับสิ่งนี้ด้านล่าง:
$(เอกสาร).พร้อม(ฟังก์ชั่น())(
var myQuote = $("#my_quote");
myQuote.hide();
$(".button").คลิก(ฟังก์ชั่น())(
myQuote.show(500);
});
});มาดูโค้ดทั้งหมดให้ละเอียดยิ่งขึ้น
ตามที่กล่าวไว้ข้างต้น เราได้ใส่โค้ดทั้งหมดที่จะเรียกใช้งานภายในฟังก์ชัน $document.ready()
เรากำหนดรหัสคำพูดของเรา (my_quote) ให้กับตัวแปร myQuote ตอนนี้เราสามารถเข้าถึงใบเสนอราคาด้วย id my_quote แล้ว
นั่นคือทั้งหมดที่ เมื่อคุณกดปุ่มเป็นเวลา 0.5 วินาที เครื่องหมายคำพูดจะปรากฏขึ้น ง่ายมากใช่มั้ย?
ยังมีต่อ....
ขอขอบคุณสำหรับความสนใจของคุณ! ขอให้ดีที่สุด!
JQuery เป็นห้องสมุดที่ยอดเยี่ยม ช่วยหลีกเลี่ยงข้อผิดพลาดทั้งหมดของ IE6 ได้อย่างสมบูรณ์แบบ ในอดีต ความเข้ากันได้ข้ามเบราว์เซอร์เป็นปัญหาใหญ่ที่นักพัฒนาต้องเผชิญ Jquery จัดการได้ดีกับความคลาดเคลื่อนในการแสดงเลย์เอาต์ในเบราว์เซอร์ต่างๆ
ปัจจุบัน เบราว์เซอร์มีโซลูชันแบบครบวงจรที่ยอดเยี่ยม เราสามารถใช้สิทธิพิเศษทั้งหมดของ ES5 ได้อย่างสะดวกสบาย และเรายังมี HTML5 API ให้เลือกใช้ ซึ่งทำให้การประมวลผลองค์ประกอบ DOM ง่ายขึ้นมาก นักพัฒนาใกล้จะลืมเลือนและเลิกใช้ jQuery ในบางโครงการ โดยเฉพาะในกรณีของไมโครเซอร์วิสและโปรแกรมที่ไม่ซับซ้อน
อย่าเข้าใจฉันผิด Jquery ยังคงเป็นห้องสมุดที่ยอดเยี่ยม และแน่นอนว่า 70% ของเวลาที่คุณจะต้องใช้มัน แม้ว่าสำหรับเพจขนาดเล็กที่มี JS ที่จำกัด คุณสามารถใช้ VanillaJS หรือเฟรมเวิร์กอื่นได้ สิ่งเหล่านี้เหมาะสำหรับแอปพลิเคชันบนมือถือ
ต่อไปนี้เป็นโค้ดการทำงาน 10 ตัวอย่างที่คุณสามารถทำได้โดยไม่ต้องใช้ jquery
ติดตามเหตุการณ์การโหลดหน้าเว็บเสร็จสมบูรณ์สิ่งแรกที่คุณทำเมื่อใช้ jQuery คือการล้อมโค้ดด้วยเมธอด $(document).ready() เพื่อทราบว่า DOM พร้อมสำหรับการจัดการเมื่อใด หากไม่มี Jquery เราสามารถใช้เหตุการณ์ DOMContentLoaded ได้ นี่คือตัวอย่างโค้ด:
// ฟังเหตุการณ์ DOMContentLoaded สำหรับทั้งเอกสารด้วยฟังก์ชันที่ไม่ระบุชื่อ // คุณสามารถล้อมโค้ดของคุณไว้ในอ้อมแขนของฟังก์ชันนี้ // และจะดำเนินการเมื่อมีการโหลดเพจ document.addEventListener("DOMContentLoaded", function () ( // สวัสดีชาวฮาวาย จะแสดงในคอนโซล console.log("Aloha"); ));
ตัวเลือกองค์ประกอบที่ไม่มี Jqueryวันหนึ่ง เราจะต้องเลือกองค์ประกอบโดยใช้ id คลาส หรือแท็ก และ jQuery ก็เป็นหนึ่งในองค์ประกอบที่ดีที่สุด ตัวเลือกที่เหมือนกันกับไวยากรณ์ CSS โดยสิ้นเชิง ปัจจุบัน เบราว์เซอร์ได้แนะนำ API ที่สำคัญสองรายการ ได้แก่ querySelector และ querySelectorAll
// คุณสามารถใช้ document.querySelector เพื่อรับองค์ประกอบแรกที่ตรงกับเกณฑ์ // รับเพียงหนึ่งอาร์กิวเมนต์ - ตัวเลือก CSS var LochNess = document.querySelector(".monsters"); console.log("It"s from Scotland - " + LochNess.textContent); // เรายังสามารถรับคอลเลกชันโดยใช้ document.querySelectorAll ได้ // ส่งคืนรายการองค์ประกอบ dom ที่ตรงกับเกณฑ์ varน่ากลัว = document.querySelectorAll(" .monsters") ; console.log("ซ่อนและค้นหาแชมเปี้ยน: "); for (var i = 0; i< scary.length; i++) { console.log(scary[i].innerHTML); }
- เนสซี่
- เท้าใหญ่
- ลาชูปาคาบรา
การฟังเหตุการณ์เป็นส่วนพื้นฐานของการสร้างเว็บแอปพลิเคชัน ในอดีตมีสองค่ายใหญ่ - IE และที่เหลือ แต่วันนี้เราแค่ใช้ addEventListener
Var btn = document.querySelectorAll("ปุ่ม"), list = document.querySelector("ul"); // เรียก addEventListener ในเหตุการณ์ที่ต้องการ // เริ่มติดตามเหตุการณ์การคลิกบนองค์ประกอบ btn.addEventListener("click", function () ( // เมื่อคลิกปุ่ม เราต้องการทริกเกอร์ขนาดเหตุการณ์ให้กับรายการของเรา // เพื่อทำสิ่งนี้ เราจำเป็นต้องเพิ่มเหตุการณ์ในรายการของเรา // เพื่อให้ เมื่อวางเมาส์เหนือองค์ประกอบ ฟังก์ชันจะเริ่มทำงาน รายการ .addEventListener("mouseover", ขยาย )); // หากต้องการยกเลิกเหตุการณ์การซูม ให้ใช้ RemoveEventListener btn.addEventListener("click", function () ( // การลบเหตุการณ์จะไม่ทำงานกับฟังก์ชันที่ไม่มีชื่อ ให้ใช้เฉพาะรายการที่มีชื่อ list.removeEventListener("mouseover", ขยาย); )); // มาสร้างฟังก์ชั่นที่จะปรับขนาดกัน var ขยาย = ฟังก์ชั่น () ( // เพิ่มคลาสสำหรับองค์ประกอบ list.classList.add("zoomed"); // เมื่อเคอร์เซอร์ออกจากรายการ ให้ลบคลาสออกเพื่อกลับสู่รายการมาตราส่วนปกติ addEventListener("mouseout ", ฟังก์ชั่น ( ) ( list.classList.remove("zoomed") )); // ตอนนี้เราต้องการเน้นชื่อเมื่อคลิก // เมื่อคลิกถูกกระตุ้นบนองค์ประกอบ มันควรจะเปลี่ยนเป็นสีเขียว // ต้องขอบคุณการมอบหมายเหตุการณ์ เราจึงสามารถเพิ่มตัวจัดการให้กับองค์ประกอบหลักได้ // ในวิธีนี้ เราจะไม่สร้างตัวฟังเหตุการณ์สำหรับแต่ละรายการ
- - list.addEventListener("click", function (e) ( // ไฮไลท์องค์ประกอบเป้าหมายเป็นสีเขียว e.target.classList.add("green"); ));
เปิดใช้งานการซูม ปิดใช้งานการซูม
คลิกที่ชื่อเพื่อไฮไลต์- ชิวแบ็กก้า
- ฮาน โซโล
- ลุค
- โบบา เฟทท์
สีเขียว ( สี: สีเขียว; ) .zoomed ( เคอร์เซอร์: ตัวชี้; ขนาดตัวอักษร: 23px; )
addEventListener ใช้อาร์กิวเมนต์ที่สาม แต่เป็นทางเลือก อย่างที่คุณเห็น โค้ดนี้ดูค่อนข้างคล้ายกับ jQuery
การเพิ่มและการลบคลาสที่ไม่มี jQuery ใน JS ล้วนๆการจัดการคลาสองค์ประกอบโดยไม่มี jQuery เป็นปัญหาใหญ่ในสมัยก่อน แต่ไม่ได้อีกต่อไป ขอบคุณคุณสมบัติ classList และหากคุณต้องการเปลี่ยนแอตทริบิวต์ คุณสามารถใช้ setAttribute ได้
Var btn = document.querySelectorAll("ปุ่ม"), div = document.querySelector("#myDiv"); btn.addEventListener("click", function () ( // วิธีง่ายๆ ในการรับแอตทริบิวต์องค์ประกอบ console.log(div.id); )); // Element.classList จัดเก็บคลาสองค์ประกอบทั้งหมดจาก DOMTokenList คลาส var = div.classList; btn.addEventListener("คลิก", ฟังก์ชั่น () ( console.log(คลาส); )); btn.addEventListener("คลิก", function () ( // การเพิ่มและลบคลาส classs.add("red"); )); btn.addEventListener("คลิก", function () ( // Toggle class classs.toggle("hidden"); ));
รหัสที่แสดง แสดงคลาส สีแดง สลับการมองเห็น
สี่เหลี่ยมจัตุรัส ( กว้าง: 100px; ความสูง: 100px; ขอบล่าง: 20px; เส้นขอบ: 1px สีเทาทึบ; รัศมีเส้นขอบ: 5px; ) .hidden ( การมองเห็น: ซ่อนไว้; ) .red ( สีพื้นหลัง: สีแดง; )
การรับและการเปลี่ยนแปลงเนื้อหา HTML ขององค์ประกอบjQuery มีวิธีอำนวยความสะดวก text() และ html() แต่คุณสามารถใช้คุณสมบัติ textContent และ innerHTML ซึ่งมีมานานก่อน jQuery แทน
Var myText = document.querySelector("#myParagraph"), btn = document.querySelectorAll("button"); // วิธีนี้ทำให้คุณสามารถค้นหาข้อความทั้งหมดของแผนผังองค์ประกอบ var myContent = myText.textContent; console.log("textContent: " + myContent); // ใช้ textContent เพื่อแทนที่ข้อความขององค์ประกอบ // ลบอันเก่าออก และแทนที่ด้วยข้อความใหม่ btn.addEventListener("click", function () ( myText.textContent = " Koalas are the best Animals "; )); // หากเราต้องการ HTML ขององค์ประกอบ ให้ใช้ innerHTML var myHtml = myText.innerHTML; console.log("innerHTML: " + myHtml); // หากต้องการแทนที่ html เพียงแค่ระบุ btn.addEventListener("click", function () ( myText.innerHTML = " Penguins are the best Animals "; ));
สัตว์ชนิดไหนดีที่สุด?
โคอาล่า
นกเพนกวินการแทรกใหม่และการลบองค์ประกอบที่มีอยู่แม้ว่า Jquery จะทำให้การทำงานง่ายขึ้นอย่างมากด้วยการเพิ่มและการลบองค์ประกอบต่างๆ แต่ก็ไม่มีใครบอกว่าสิ่งนี้ไม่สามารถทำได้ในโค้ด JavaScript ล้วนๆ ต่อไปนี้คือตัวอย่างวิธีเพิ่ม ลบ หรือแทนที่องค์ประกอบบนหน้า
อาหารกลางวัน Var = document.querySelector("#lunch"); // สมมติว่าเรามีเมนูสำหรับมื้อกลางวัน // มาเพิ่มบางอย่างลงไป var addFries = function () ( // ก่อนอื่นเราสร้างองค์ประกอบและเติมเนื้อหาด้วยเนื้อหา var fries = document.createElement("div"); fries .innerHTML = "
- มันฝรั่งทอด
"; // เมื่อเสร็จแล้ว เราจะใช้ appendChild เพื่อแทรกลงในหน้า // องค์ประกอบของเราจะปรากฏบนหน้าในเมนู Lunch.appendChild(fries); ); // เพิ่มชีสลงในเบอร์เกอร์ของเรา) . var addCheese = function () ( var beef = document.querySelector("#Beef"), topSlice = document.createElement("li"), BottomSlice = document.createElement("li"); BottomSlice.innerHTML = topSlice.innerHTML = "Cheese"; top slice: // ใช้องค์ประกอบหลัก beef และใช้ insertBefore // อาร์กิวเมนต์แรกในเมธอด insertBefore คือองค์ประกอบที่เพิ่มเข้ามาของเรา // อาร์กิวเมนต์ที่สองคือองค์ประกอบก่อนหน้าซึ่งเราจะเพิ่ม beef.parentNode ที่สร้างขึ้น .insertBefore(topSlice, beef); : // มาทำเคล็ดลับกันหน่อย! // ระบุองค์ประกอบที่ใกล้เคียงที่สุดถัดไปเป็นพารามิเตอร์ตัวที่สองใน insertBefore, // วิธีนี้เราจะแทรกเนื้อหา "หลัง" องค์ประกอบที่ต้องการ beef.parentNode.insertBefore (bottomSlice, beef.nextSibling); RemovePickles = function () ( // ลบองค์ประกอบ var Pickles = document.querySelector("#pickles"); ถ้า (ผักดอง) (pickles.parentNode.removeChild(ผักดอง); ) ); // อร่อย! var btn = document.querySelectorAll("ปุ่ม"); btn.addEventListener("คลิก", addFries); btn.addEventListener("คลิก", addCheese); btn.addEventListener("คลิก", ลบ Pickles);เพิ่มมันฝรั่งทอดในมื้อกลางวัน เพิ่มชีสในแซนวิช ลบผักดอง อาหารกลางวันของฉัน
- แซนด์วิชของฉัน
- ขนมปัง
- ผักดอง
- เนื้อวัว
- มาโย
- ขนมปัง
ด้วยการถือกำเนิดของ jQuery โปรแกรมเมอร์เว็บมีโอกาสที่จะสร้างเอฟเฟ็กต์ภาพที่น่าประทับใจโดยไม่ต้องใช้เทคโนโลยีแฟลช บทความนี้นำเสนอตัวอย่างที่โดดเด่นหลายประการเกี่ยวกับผลลัพธ์ที่น่าทึ่งที่สามารถทำได้โดยใช้เครื่องมือเบราว์เซอร์มาตรฐานและจินตนาการของคุณ
เอฟเฟกต์แว่นขยายเอฟเฟกต์ที่ได้รับการจัดระเบียบอย่างดีซึ่งช่วยให้คุณขยายส่วนของรูปภาพที่จะวางเคอร์เซอร์ไว้ได้ ในเบราว์เซอร์ที่ไม่คุ้นเคยกับ CSS3 แว่นขยายจะเป็นสี่เหลี่ยมจัตุรัส
เอเวียสไลเดอร์แถบเลื่อนนี้มีโหมดต่างๆ แปดโหมดสำหรับการพลิกดูภาพ ซึ่งแต่ละโหมดจะทำให้ตาคุณพึงพอใจด้วยไดนามิกที่สวยงามไร้ที่ติ
การนำทางในวงกว้าง
สไลด์โชว์ภาพขนาดใหญ่
การนำทางแบบวงกลมไม่บ่อยนักที่คุณจะเจอไซต์ที่มีองค์ประกอบทรงกลมมากมาย ปลั๊กอิน Bubble Navigation ช่วยให้คุณสร้างการนำทางแบบไดนามิกโดยอิงจากแวดวงเพียงอย่างเดียว
แผงเข้าสู่ระบบแบบเลื่อนลง
หมุนเวียนช่วยให้คุณเปิดองค์ประกอบของหน้าเป็นวงกลมและในระนาบต่างๆ
กล่องพลิกปลั๊กอิน Flip ช่วยให้คุณสามารถพลิกองค์ประกอบต่างๆ ได้เหมือนกับว่าเป็นการ์ด
แกลเลอรี่โฉบแกลเลอรี่ภาพที่ไม่เป็นทางการ การแสดงตัวอย่างเนื้อหาคือกลุ่มภาพถ่ายที่กระจัดกระจายซึ่งถ่ายด้วยกล้องโพลารอยด์
อิคารูเซลแถบเลื่อนรูปภาพที่เรียบง่ายแต่สวยงามมาก
อิมเมจโฟลว์สไลด์โชว์พร้อมภาพที่เคลื่อนไหวในอวกาศ
รูปภาพแบบโต้ตอบวิธีที่น่าสนใจมากในการสร้างแคตตาล็อกผลิตภัณฑ์เชิงโต้ตอบ
การเปลี่ยนแปลงของ Jqfancy
การถ่ายภาพช่วยให้คุณสามารถถ่ายภาพแต่ละส่วนของภาพบนเพจได้ คลิกที่ส่วนที่ต้องการของภาพและดูผลลัพธ์บนหน้าจอ
ทรายด่วนปลั๊กอิน Quicksand จะช่วยให้คุณสามารถจัดเรียงและกรองชุดองค์ประกอบโดยใช้เอฟเฟกต์คุณภาพสูงมาก
เคล็ดลับบริบทของสไลด์เอาท์ปลั๊กอินนี้จะมีประโยชน์มากสำหรับการสร้างคำอธิบายโดยละเอียดของวัตถุที่ซับซ้อนและการทัวร์แบบโต้ตอบเมื่อจำเป็น ขณะเดียวกันก็ใช้พื้นที่น้อยที่สุดเท่าที่จะเป็นไปได้ในการให้ข้อมูลจำนวนมาก
กล่องเลื่อนปลั๊กอินกล่องเลื่อนจะช่วยคุณสร้างแกลเลอรีรูปภาพไดนามิกที่ผิดปกติพร้อมคำบรรยายสำหรับรูปภาพเหล่านั้น
แกลเลอรี่ซูมเมอร์แกลเลอรีรูปภาพที่มีองค์ประกอบต่างๆ จะปรากฏขึ้นอย่างร่าเริงเมื่อคุณวางเมาส์เหนือองค์ประกอบเหล่านั้น
- คลิกได้ ขั้นแรก เรามาเชื่อมโยงกับเหตุการณ์การคลิกสำหรับองค์ประกอบ “.pane-list li” เมื่อผู้ใช้คลิกที่รายการ ฟังก์ชั่นของเราจะค้นหาแท็ก และจะเปลี่ยนเส้นทางไปยังหน้าที่ระบุในแอตทริบิวต์ href