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

เหตุการณ์เป็นวิธีสำหรับชั้นเรียนที่จะให้การแจ้งเตือนแก่ผู้ฟังเมื่อมีสิ่งใดเกิดขึ้น

11
ฟังก์ชัน event.preventDefault () ไม่ทำงานใน IE
ต่อไปนี้เป็นรหัส JavaScript (mootools) ของฉัน: $('orderNowForm').addEvent('submit', function (event) { event.preventDefault(); allFilled = false; $$(".required").each(function (inp) { if (inp.getValue() != '') { allFilled = true; } }); if (!allFilled) { $$(".errormsg").setStyle('display', ''); return; } else { $$('.defaultText').each(function (input) { if (input.getValue() == input.getAttribute('title')) { input.setAttribute('value', ''); } }); } this.send({ onSuccess: function …

9
เหตุการณ์โฮเวอร์เชิงมุม 2
ในกรอบAngular2ใหม่ไม่มีใครรู้วิธีที่เหมาะสมในการทำโฮเวอร์เหมือนกับเหตุการณ์หรือไม่? ในAngular1นั้นมีอยู่ng-Mouseoverแต่ดูเหมือนจะไม่ถูกพาไป ฉันตรวจดูเอกสารแล้ว แต่ไม่พบอะไรเลย

15
ระบบเหตุการณ์ใน Python
คุณใช้ระบบกิจกรรมใดใน Python ฉันรับทราบpydispatcher อยู่แล้ว แต่ฉันสงสัยว่าจะมีอะไรอีกบ้างที่สามารถพบได้หรือใช้กันทั่วไป ฉันไม่สนใจผู้จัดการเหตุการณ์ที่เป็นส่วนหนึ่งของกรอบงานขนาดใหญ่ฉันควรใช้โซลูชันกระดูกเปลือยขนาดเล็กที่ฉันสามารถขยายได้อย่างง่ายดาย

4
สร้างเหตุการณ์ที่กำหนดเองใน Java
ฉันต้องการทำสิ่งนี้ใน Java แต่ฉันไม่รู้วิธี: เมื่อเหตุการณ์ "object 1 พูดว่า 'hello'" จะเกิดขึ้นดังนั้น object 2 จะตอบกลับเหตุการณ์นั้นโดยพูดว่า "hello" ใครสามารถให้คำแนะนำหรือตัวอย่างรหัสแก่ฉันได้หรือไม่
193 java  events  listener  handler 

8
ฉันจะจดจำเหตุการณ์การสัมผัสโดยใช้ jQuery ใน Safari สำหรับ iPad ได้อย่างไร เป็นไปได้ไหม?
เป็นไปได้หรือไม่ที่จะจดจำเหตุการณ์การสัมผัสบนเบราว์เซอร์ Safari ของ iPad โดยใช้ jQuery ฉันใช้ mouseOver และ mouseOut events ในเว็บแอปพลิเคชัน มีเหตุการณ์ที่คล้ายกันสำหรับเบราว์เซอร์ Safari ของ iPad เนื่องจากไม่มีเหตุการณ์เช่น mouseOut และ mouseMove หรือไม่


7
jQuery เทียบเท่ากับเมธอด addEventListener ของ JavaScript
ฉันพยายามค้นหา jQuery ที่เทียบเท่ากับการเรียกใช้เมธอด JavaScript นี้: document.addEventListener('click', select_element, true); ฉันได้รับเท่าที่: $(document).click(select_element); แต่นั่นก็ไม่ได้ผลเช่นเดียวกันกับพารามิเตอร์สุดท้ายของวิธีการจาวาสคริปต์ - บูลีนที่ระบุว่าควรจะดำเนินการตัวจัดการเหตุการณ์ในระยะการจับหรือการเดือด (ต่อความเข้าใจของฉันจากhttp://www.quirksmode.org /js/events_advanced.html ) - ถูกปล่อยออก ฉันจะระบุพารามิเตอร์นั้นหรือใช้ฟังก์ชันเดียวกันโดยใช้ jQuery ได้อย่างไร

23
เมื่อมีเหตุการณ์ 'เบลอ' เกิดขึ้นฉันจะทราบได้อย่างไรว่าองค์ประกอบโฟกัสไปที่ * ถึง *
สมมติว่าฉันแนบblurฟังก์ชั่นกับช่องใส่ HTML เช่นนี้ <input id="myInput" onblur="function() { ... }"></input> มีวิธีรับ ID ขององค์ประกอบที่ทำให้เกิดblurเหตุการณ์ไฟ (องค์ประกอบที่ถูกคลิก) ภายในฟังก์ชันหรือไม่ อย่างไร? ตัวอย่างเช่นสมมติว่าฉันมีช่วงเช่นนี้: <span id="mySpan">Hello World</span> หากฉันคลิกที่ระยะห่างหลังจากองค์ประกอบอินพุตมีโฟกัสองค์ประกอบอินพุตจะสูญเสียโฟกัส ฟังก์ชั่นรู้ได้อย่างไรว่ามันmySpanถูกคลิกแล้ว? PS: หากเหตุการณ์ onclick ของช่วงจะเกิดขึ้นก่อนที่เหตุการณ์ onblur ขององค์ประกอบอินพุตปัญหาของฉันจะได้รับการแก้ไขเพราะฉันสามารถตั้งค่าสถานะบางอย่างที่ระบุว่ามีการคลิกองค์ประกอบเฉพาะ PPS: พื้นหลังของปัญหานี้คือฉันต้องการทริกเกอร์การควบคุมอัตโนมัติ AJAX จากภายนอก (จากองค์ประกอบที่คลิกได้) เพื่อแสดงคำแนะนำโดยไม่มีข้อเสนอแนะหายไปทันทีเนื่องจากblurเหตุการณ์ในองค์ประกอบอินพุต ดังนั้นฉันต้องการตรวจสอบblurฟังก์ชั่นหากมีการคลิกองค์ประกอบเฉพาะอย่างใดอย่างหนึ่งและหากเป็นเช่นนั้นให้ข้ามเหตุการณ์เบลอ
187 javascript  events 

8
วิธีหยุดการทำฟองอากาศในช่องทำเครื่องหมายให้คลิก
ฉันมีช่องทำเครื่องหมายที่ฉันต้องการดำเนินการบางอย่างของ Ajax ในกิจกรรมคลิกอย่างไรก็ตามช่องทำเครื่องหมายยังอยู่ในคอนเทนเนอร์ด้วยพฤติกรรมการคลิกของตัวเองซึ่งฉันไม่ต้องการเรียกใช้เมื่อคลิกที่ช่องทำเครื่องหมาย ตัวอย่างนี้แสดงสิ่งที่ฉันต้องการทำ: $(document).ready(function() { $('#container').addClass('hidden'); $('#header').click(function() { if ($('#container').hasClass('hidden')) { $('#container').removeClass('hidden'); } else { $('#container').addClass('hidden'); } }); $('#header input[type=checkbox]').click(function(event) { // Do something }); }); #container.hidden #body { display: none; } <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script> <div id="container"> <div id="header"> <h1>Title</h1> <input type="checkbox" name="test" /> </div> <div id="body"> <p>Some content</p> …

6
เหตุการณ์ที่กำหนดเองใน jQuery?
ฉันกำลังมองหาข้อมูลบางอย่างเกี่ยวกับวิธีการใช้การจัดการเหตุการณ์ที่กำหนดเองใน jquery วิธีที่ดีที่สุด ฉันรู้วิธีเชื่อมต่อเหตุการณ์จากองค์ประกอบ dom เช่น 'คลิก' ฯลฯ แต่ฉันกำลังสร้างไลบรารี / ปลั๊กอินจาวาสคริปต์เล็ก ๆ เพื่อจัดการกับฟังก์ชันการแสดงตัวอย่าง ฉันได้รับสคริปต์ทำงานเพื่ออัปเดตข้อความบางส่วนในองค์ประกอบ dom จากชุดของกฎและการป้อนข้อมูล / ผู้ใช้ที่ฉันได้รับ แต่ตอนนี้ฉันต้องการข้อความเดียวกันที่แสดงในองค์ประกอบอื่น ๆ ที่สคริปต์นี้ไม่สามารถรู้ได้ สิ่งที่ฉันต้องการก็คือรูปแบบที่ดีในการสังเกตสคริปต์นี้ที่สร้างข้อความที่ต้องการ ดังนั้นฉันจะทำอย่างไร ฉันมองข้ามฟังก์ชั่นบิวอินใน jquery เพื่อยกระดับ / จัดการกิจกรรมของผู้ใช้หรือฉันต้องการปลั๊กอิน jquery เพื่อทำมันหรือไม่? คุณคิดว่าอะไรเป็นวิธีที่ดีที่สุดในการจัดการปลั๊กอินนี้?
180 jquery  events 

10
ฉันสามารถโทร jquery click () เพื่อติดตามลิงก์ <a> ได้หรือไม่หากฉันไม่ได้ผูกตัวจัดการเหตุการณ์ไว้ด้วยการผูกหรือคลิกแล้ว
ฉันมีตัวจับเวลาใน JavaScript ของฉันซึ่งจำเป็นต้องเลียนแบบการคลิกลิงก์เพื่อไปยังหน้าอื่นเมื่อเวลาผ่านไป เมื่อต้องการทำสิ่งนี้ฉันใช้click()ฟังก์ชันของ jQuery ฉันได้ใช้$().trigger()และwindow.locationยังและฉันสามารถทำให้มันทำงานตามที่ตั้งใจไว้กับทั้งสาม ฉันสังเกตเห็นพฤติกรรมแปลก ๆ ด้วยclick()และฉันพยายามที่จะเข้าใจว่าเกิดอะไรขึ้นและทำไม ฉันใช้ Firefox สำหรับทุกสิ่งที่ฉันอธิบายในคำถามนี้ แต่ฉันก็สนใจในสิ่งที่เบราว์เซอร์อื่นจะทำกับสิ่งนี้ หากฉันไม่ได้ใช้$('a').bind('click',fn)หรือ$('a').click(fn)ตั้งค่าตัวจัดการเหตุการณ์การโทร$('a').click()ดูเหมือนจะไม่ทำอะไรเลย ไม่เรียกตัวจัดการเริ่มต้นของเบราว์เซอร์สำหรับเหตุการณ์นี้เนื่องจากเบราว์เซอร์ไม่โหลดหน้าใหม่ อย่างไรก็ตามถ้าฉันตั้งค่าตัวจัดการเหตุการณ์ก่อนมันก็ใช้ได้ตามที่คาดไว้แม้ว่าตัวจัดการเหตุการณ์จะไม่ทำอะไรเลย $('a').click(function(){return true;}).click(); สิ่งนี้จะโหลดหน้าใหม่ราวกับว่าฉันคลิกตัวเอง ดังนั้นคำถามของฉันคือทวีคูณ: นี่เป็นพฤติกรรมแปลก ๆ เพราะฉันทำอะไรผิดไปหรือเปล่า? และทำไมการโทรถึงไม่click()ทำอะไรเลยกับพฤติกรรมเริ่มต้นหากฉันไม่ได้สร้างตัวจัดการเอง แก้ไข: ตามที่ฮอฟแมนกำหนดเมื่อเขาพยายามทำซ้ำผลลัพธ์ของฉันผลลัพธ์ที่ฉันอธิบายไว้ข้างต้นจะไม่เกิดขึ้นจริง ฉันไม่แน่ใจว่าสิ่งที่ทำให้เกิดเหตุการณ์ที่ฉันสังเกตเห็นเมื่อวานนี้ แต่ฉันมั่นใจในวันนี้ว่ามันไม่ใช่สิ่งที่ฉันอธิบายในคำถาม ดังนั้นคำตอบคือคุณไม่สามารถคลิก "ปลอม" ในเบราว์เซอร์ได้และ jQuery ทั้งหมดจะเรียกใช้ตัวจัดการเหตุการณ์ของคุณ คุณยังคงสามารถใช้window.locationเพื่อเปลี่ยนหน้าและทำงานได้ดีสำหรับฉัน

28
ตรวจจับการป้อนอัตโนมัติของเบราว์เซอร์
คุณจะบอกได้อย่างไรว่าเบราว์เซอร์เติมข้อความอัตโนมัติหรือไม่ โดยเฉพาะอย่างยิ่งกับกล่องชื่อผู้ใช้และรหัสผ่านที่ป้อนอัตโนมัติเมื่อมีการโหลดหน้าเว็บ คำถามแรกของฉันคือสิ่งนี้เกิดขึ้นในลำดับการโหลดหน้า? ก่อนหรือหลังเอกสารเสร็จไหม ประการที่สองฉันจะใช้ตรรกะเพื่อค้นหาว่าสิ่งนี้เกิดขึ้นได้อย่างไร ไม่ใช่ว่าฉันต้องการที่จะหยุดสิ่งนี้ไม่ให้เกิดขึ้นเพียงขอเข้าร่วมในเหตุการณ์ โดยเฉพาะอย่างยิ่งสิ่งนี้: if (autoFilled == true) { } else { } ถ้าเป็นไปได้ฉันชอบที่จะเห็น jsfiddle แสดงคำตอบของคุณ ข้อมูลซ้ำที่เป็นไปได้ เหตุการณ์ DOM สำหรับป้อนรหัสผ่านเบราว์เซอร์อัตโนมัติหรือไม่ Autofill ของเบราว์เซอร์และ Javascript เรียกใช้เหตุการณ์ - ทั้งคำถามเหล่านี้ไม่ได้อธิบายสิ่งที่เรียกเหตุการณ์พวกเขาเพียงตรวจสอบกล่องข้อความอย่างต่อเนื่อง (ไม่ดีสำหรับประสิทธิภาพ!)

12
วิธีการสั่งซื้อเหตุการณ์ที่ถูกผูกไว้กับ jQuery
ให้บอกว่าฉันมีเว็บแอพที่มีหน้าเว็บที่อาจมี 4 บล็อกสคริปต์ - สคริปต์ที่ฉันเขียนอาจพบได้ในหนึ่งในบล็อกเหล่านั้น แต่ฉันไม่ทราบว่าตัวควบคุมนั้นถูกจัดการโดยตัวควบคุมใด ฉันผูกonclickเหตุการณ์บางอย่างกับปุ่ม แต่ฉันพบว่าบางครั้งพวกเขาดำเนินการตามคำสั่งที่ฉันไม่ได้คาดหวัง มีวิธีที่จะทำให้มั่นใจในการสั่งซื้อหรือคุณจัดการกับปัญหานี้ได้อย่างไรในอดีต?

9
การลบฟังเหตุการณ์ที่ถูกเพิ่มเข้ามาด้วยการผูก
ใน JavaScript วิธีที่ดีที่สุดในการลบฟังก์ชั่นที่เพิ่มเข้ามาเป็นฟังเหตุการณ์โดยใช้ bind () คืออะไร? ตัวอย่าง (function(){ // constructor MyClass = function() { this.myButton = document.getElementById("myButtonID"); this.myButton.addEventListener("click", this.clickListener.bind(this)); }; MyClass.prototype.clickListener = function(event) { console.log(this); // must be MyClass }; // public method MyClass.prototype.disableButton = function() { this.myButton.removeEventListener("click", ___________); }; })(); วิธีเดียวที่ฉันคิดได้คือการติดตามผู้ฟังทุกคนที่เพิ่มเข้ามาด้วยการผูก ตัวอย่างข้างต้นด้วยวิธีนี้: (function(){ // constructor MyClass = function() { …

15
เหตุการณ์ AngularJs ที่จะเรียกหลังจากโหลดเนื้อหาแล้ว
ฉันมีฟังก์ชั่นที่ฉันต้องการโทรหลังจากโหลดเนื้อหาหน้า ฉันอ่านเกี่ยวกับ $ viewContentLoaded และใช้ไม่ได้สำหรับฉัน ฉันกำลังมองหาบางอย่างเช่น document.addEventListener('DOMContentLoaded', function () { //Content goes here }, false); การโทรด้านบนไม่ทำงานสำหรับฉันในตัวควบคุม AngularJs
163 angularjs  events  loaded 

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.