คำถามติดแท็ก jquery-events

วิธีการเหล่านี้ใช้เพื่อลงทะเบียนพฤติกรรมที่จะมีผลเมื่อผู้ใช้โต้ตอบกับเบราว์เซอร์และเพื่อปรับเปลี่ยนพฤติกรรมที่ลงทะเบียนเหล่านั้นเพิ่มเติม

5
Direct vs. Delegated - jQuery .on ()
ฉันพยายามที่จะเข้าใจความแตกต่างนี้โดยเฉพาะระหว่างโดยตรงและได้รับการแต่งตั้งจัดการเหตุการณ์โดยใช้jQuery .on ()วิธีการ ประโยคสุดท้ายในย่อหน้านี้โดยเฉพาะ: เมื่อselectorมีให้จัดการเหตุการณ์จะเรียกว่าได้รับมอบหมาย ตัวจัดการจะไม่ถูกเรียกเมื่อเหตุการณ์เกิดขึ้นโดยตรงกับองค์ประกอบที่ถูกผูก แต่สำหรับลูกหลาน (องค์ประกอบภายใน) ที่ตรงกับตัวเลือก jQuery ทำให้ฟองเหตุการณ์จากเหตุการณ์เป้าหมายไปยังองค์ประกอบที่แนบตัวจัดการ (กล่าวคือภายในสุดถึงองค์ประกอบนอกสุด) และเรียกใช้ตัวจัดการสำหรับองค์ประกอบใด ๆ ตามเส้นทางนั้นที่ตรงกับตัวเลือก การ "เรียกใช้ตัวจัดการสำหรับองค์ประกอบใด ๆ " หมายความว่าอย่างไร ฉันทำหน้าทดสอบเพื่อทดสอบด้วยแนวคิด แต่โครงสร้างทั้งสองต่อไปนี้นำไปสู่พฤติกรรมที่เหมือนกัน: $("div#target span.green").on("click", function() { alert($(this).attr("class") + " is clicked"); }); หรือ, $("div#target").on("click", "span.green", function() { alert($(this).attr("class") + " is clicked"); }); บางทีใครบางคนอาจอ้างถึงตัวอย่างที่แตกต่างเพื่อชี้แจงประเด็นนี้? ขอบคุณ

13
วิธีทริกเกอร์เหตุการณ์หลังจากใช้ event.preventDefault ()
ฉันต้องการจัดกิจกรรมจนกว่าฉันจะพร้อมยิงเช่น $('.button').live('click', function(e){ e.preventDefault(); // do lots of stuff e.run() //this proceeds with the normal event } มีrun()ฟังก์ชั่นที่เทียบเท่ากับที่อธิบายข้างต้นหรือไม่?

9
jQuery รับค่าอินพุตหลังจากกดแป้น
ฉันมีฟังก์ชั่นดังต่อไปนี้: $(document).ready(function() { $("#dSuggest").keypress(function() { var dInput = $('input:text[name=dSuggest]').val(); console.log(dInput); $(".dDimension:contains('" + dInput + "')").css("display","block"); }); }); ด้วยเหตุผลบางประการสำหรับการกดแป้นแรกฉันได้รับสตริงว่างในบันทึกของคอนโซล

19
ลองกดใน JavaScript?
เป็นไปได้ไหมที่จะใช้ "long press" ใน JavaScript (หรือ jQuery) อย่างไร? (ที่มา: androinica.com ) HTML <a href="" title="">Long press</a> JavaScript $("a").mouseup(function(){ // Clear timeout return false; }).mousedown(function(){ // Set timeout return false; });

18
วิธีการแยกเหตุการณ์คลิกเดียวและเหตุการณ์คลิกสองครั้ง?
ฉันมีเพียงปุ่มเดียวใน li มี "my_id"id ฉันแนบ jQuery สองเหตุการณ์ที่มีองค์ประกอบนี้ 1 $("#my_id").click(function() { alert('single click'); }); 2 $("#my_id").dblclick(function() { alert('double click'); }); แต่ทุกครั้งมันก็ให้ single click

14
จะตรวจจับเหตุการณ์ข้ามเบราว์เซอร์ออนไลน์ / ออฟไลน์ได้อย่างไร
ฉันกำลังพยายามตรวจจับอย่างแม่นยำเมื่อเบราว์เซอร์ออฟไลน์โดยใช้ HTML5 เหตุการณ์ออนไลน์และออฟไลน์ นี่คือรหัสของฉัน: <script> // FIREFOX $(window).bind("online", applicationBackOnline); $(window).bind("offline", applicationOffline); //IE window.onload = function() { document.body.ononline = IeConnectionEvent; document.body.onoffline = IeConnectionEvent; } </script> มันใช้งานได้ดีเมื่อฉันกด "ทำงานออฟไลน์" บน Firefox หรือ IE แต่มันทำงานแบบสุ่มเมื่อฉันถอดปลั๊กจริงๆ วิธีใดที่ดีที่สุดในการตรวจพบการเปลี่ยนแปลงนี้ ฉันต้องการหลีกเลี่ยงการโทรซ้ำ ๆ ของ ajax ด้วยการหมดเวลา

13
jQuery scroll () ตรวจจับเมื่อผู้ใช้หยุดเลื่อน
โอเคกับเรื่องนี้ .. $(window).scroll(function() { $('.slides_layover').removeClass('showing_layover'); $('#slides_effect').show(); }); ฉันสามารถบอกได้เมื่อมีคนเลื่อนจากสิ่งที่ฉันเข้าใจ ด้วยเหตุนี้ฉันจึงพยายามหาวิธีจับเมื่อมีคนหยุด จากตัวอย่างข้างต้นคุณจะเห็นว่าฉันกำลังลบคลาสออกจากชุดขององค์ประกอบในขณะที่กำลังเกิดการเลื่อน อย่างไรก็ตามฉันต้องการเปิดคลาสนั้นอีกครั้งเมื่อผู้ใช้หยุดเลื่อน เหตุผลนี้คือฉันตั้งใจที่จะให้มีการแสดงการหยุดพักระหว่างที่หน้ากำลังเลื่อนเพื่อให้หน้าเว็บมีเอฟเฟกต์พิเศษที่ฉันกำลังพยายามทำอยู่ แต่คลาสเดียวที่ฉันพยายามลบในขณะที่การเลื่อนขัดแย้งกับเอฟเฟกต์นั้นเนื่องจากเอฟเฟกต์ความโปร่งใสต่อธรรมชาติบางอย่าง

8
จะลบ“ onclick” ด้วย JQuery ได้อย่างไร?
รหัส PHP: <a id="a$id" onclick="check($id,1)" href="javascript:void(0)" class="black">Qualify</a> ฉันต้องการลบonclick="check($id,1)ลิงก์เพื่อไม่ให้คลิกลิงก์หรือ " check($id,1)ไม่สามารถเริ่มทำงานได้ฉันจะทำอย่างไรกับ JQuery?

8
วิธีการผูกเหตุการณ์บน Ajax โหลดเนื้อหา?
ฉันมีลิงก์myLinkที่ควรแทรกเนื้อหาที่โหลด AJAX ลงในdiv(appendedContainer) ของหน้า HTML ของฉัน ปัญหาคือclickเหตุการณ์ที่ฉันผูกไว้กับ jQuery ไม่ได้ถูกดำเนินการกับเนื้อหาที่โหลดใหม่ซึ่งถูกแทรกลงใน appendedContainer clickเหตุการณ์ที่ถูกผูกไว้ในองค์ประกอบ DOM ที่ยังไม่ได้เต็มไปด้วยฟังก์ชั่น AJAX ของฉัน ฉันต้องเปลี่ยนแปลงอะไรบ้างเพื่อที่เหตุการณ์จะผูกพัน? HTML ของฉัน: <a class="LoadFromAjax" href="someurl">Load Ajax</a> <div class="appendedContainer"></div> JavaScript ของฉัน: $(".LoadFromAjax").on("click", function(event) { event.preventDefault(); var url = $(this).attr("href"), appendedContainer = $(".appendedContainer"); $.ajax({ url: url, type : 'get', complete : function( qXHR, textStatus ) { …

4
เหตุการณ์ดร็อปไม่เริ่มทำงานใน Chrome
ดูเหมือนว่าเหตุการณ์ดร็อปจะไม่เกิดขึ้นเมื่อฉันคาดหวัง ฉันคิดว่าเหตุการณ์ดร็อปเริ่มทำงานเมื่อองค์ประกอบที่ถูกลากถูกปล่อยออกมาเหนือองค์ประกอบเป้าหมาย แต่ดูเหมือนจะไม่เป็นเช่นนั้น ฉันเข้าใจผิดอะไร? http://jsfiddle.net/LntTL/ $('.drop').on('drop dragdrop',function(){ alert('dropped'); }); $('.drop').on('dragenter',function(){ $(this).html('drop now').css('background','blue'); }) $('.drop').on('dragleave',function(){ $(this).html('drop here').css('background','red'); })

5
วิธีหยุดพฤติกรรมการคลิกลิงก์เริ่มต้นด้วย jQuery
ฉันมีลิงค์บนหน้าเว็บ เมื่อผู้ใช้คลิกวิดเจ็ตบนเพจควรอัปเดต อย่างไรก็ตามฉันกำลังทำบางอย่างเนื่องจากฟังก์ชันการทำงานเริ่มต้น (การนำทางไปยังหน้าอื่น) เกิดขึ้นก่อนที่เหตุการณ์จะเริ่มขึ้น นี่คือลักษณะของลิงค์: <a href="store/cart/" class="update-cart">Update Cart</a> นี่คือลักษณะของ jQuery: $('.update-cart').click(function(e) { e.stopPropagation(); updateCartWidget(); }); อะไรคือปัญหา?
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.