คำถามติดแท็ก event-handling

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

13
event.preventDefault () กับ return false
คุณเป็นผู้ดูแลระบบStack Overflow нарусском : "PreventDefault ()" или "return false" หรือไม่ เมื่อฉันต้องการป้องกันตัวจัดการเหตุการณ์อื่นไม่ให้ดำเนินการหลังจากเหตุการณ์บางอย่างเกิดขึ้นฉันสามารถใช้หนึ่งในสองเทคนิค ฉันจะใช้ jQuery ในตัวอย่าง แต่สิ่งนี้ใช้ได้กับ plain-JS ด้วย: 1 event.preventDefault() $('a').click(function (e) { // custom handling here e.preventDefault(); }); 2 return false $('a').click(function () { // custom handling here return false; }); มีความแตกต่างอย่างมีนัยสำคัญระหว่างสองวิธีในการหยุดการเผยแพร่เหตุการณ์หรือไม่? สำหรับฉันนั้นreturn false;ง่ายกว่าสั้นกว่าและอาจเกิดข้อผิดพลาดน้อยกว่าการใช้วิธีการ ด้วยวิธีการนี้คุณต้องจำไว้เกี่ยวกับการใส่ปลอกวงเล็บที่ถูกต้องและอื่น ๆ นอกจากนี้ฉันต้องกำหนดพารามิเตอร์แรกในการโทรกลับเพื่อให้สามารถเรียกวิธีการ อาจมีสาเหตุบางอย่างที่ฉันควรหลีกเลี่ยงการทำเช่นนี้และใช้preventDefaultแทน วิธีที่ดีกว่าคืออะไร


10
ช่องทำเครื่องหมาย jQuery สถานะการตรวจสอบการเปลี่ยนแปลงเหตุการณ์
ฉันต้องการให้เหตุการณ์ดำเนินการด้านไคลเอ็นต์เมื่อทำเครื่องหมายที่ช่องทำเครื่องหมาย / ไม่เลือก: $('.checkbox').click(function() { if ($(this).is(':checked')) { // Do stuff } }); โดยทั่วไปฉันต้องการให้เกิดขึ้นสำหรับทุกช่องในหน้า วิธีการนี้เป็นการยิงที่คลิกและตรวจสอบสถานะ ok ฉันคิดว่าต้องมีวิธี jQuery ที่สะอาดกว่า ใครรู้วิธีแก้ปัญหา?

15
วิธีแก้ปัญหาการเชื่อมเหตุการณ์ JavaScript / jQuery ด้วย Firebug หรือเครื่องมือที่คล้ายกัน
ฉันต้องแก้จุดบกพร่องเว็บแอปพลิเคชันที่ใช้ jQuery เพื่อทำการจัดการDOMที่ซับซ้อนและยุ่งเหยิง ณ จุดหนึ่งเหตุการณ์บางอย่างที่ถูกผูกมัดกับองค์ประกอบบางอย่างไม่ถูกไล่ออกและหยุดทำงาน หากฉันมีความสามารถในการแก้ไขแหล่งที่มาของแอปพลิเคชันฉันจะเจาะลึกลงไปและเพิ่มงบงบFirebug จำนวนมาก console.log()และแสดงความคิดเห็น / รหัส uncomment ของรหัสเพื่อพยายามระบุปัญหา แต่สมมติว่าฉันไม่สามารถแก้ไขรหัสแอปพลิเคชันและต้องทำงานอย่างสมบูรณ์ใน Firefox โดยใช้ Firebug หรือเครื่องมือที่คล้ายกัน Firebug นั้นดีมากที่ให้ฉันนำทางและจัดการ DOM ถึงตอนนี้ฉันยังไม่สามารถหาวิธีการดีบักเหตุการณ์ด้วย Firebug ได้ โดยเฉพาะฉันต้องการเห็นรายการตัวจัดการเหตุการณ์ที่ถูกผูกไว้กับองค์ประกอบเฉพาะในเวลาที่กำหนด (ใช้จุดพัก Firebug JavaScript เพื่อติดตามการเปลี่ยนแปลง) แต่ทั้ง Firebug ไม่มีความสามารถในการดูเหตุการณ์ที่ถูกผูกไว้หรือฉันโง่เกินไปที่จะค้นหา :-) คำแนะนำหรือความคิดใด ๆ โดยหลักการแล้วฉันต้องการดูและแก้ไขเหตุการณ์ที่ผูกกับองค์ประกอบเช่นเดียวกับที่ฉันสามารถแก้ไข DOM วันนี้

18
ช่องทำเครื่องหมาย jQuery เปลี่ยนแล้วคลิกเหตุการณ์
$(document).ready(function() { //set initial state. $('#textbox1').val($(this).is(':checked')); $('#checkbox1').change(function() { $('#textbox1').val($(this).is(':checked')); }); $('#checkbox1').click(function() { if (!$(this).is(':checked')) { return confirm("Are you sure?"); } }); }); <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <input type="checkbox" id="checkbox1"/><br /> <input type="text" id="textbox1"/> เรียกใช้ข้อมูลโค้ดซ่อนผลลัพธ์ขยายตัวอย่างข้อมูล ที่นี่.change()อัพเดตค่าช่องข้อความด้วยสถานะช่องทำเครื่องหมาย ฉันใช้.click()เพื่อยืนยันการกระทำที่ไม่เลือก หากผู้ใช้เลือกยกเลิกเครื่องหมายถูกจะคืนค่า แต่.change()ไฟก่อนที่จะยืนยัน สิ่งนี้จะทำให้สิ่งต่าง ๆ อยู่ในสถานะที่ไม่สอดคล้องกันและกล่องข้อความบอกว่าเป็นเท็จเมื่อมีการทำเครื่องหมายที่ช่องทำเครื่องหมาย ฉันจะจัดการกับการยกเลิกและรักษาค่าของกล่องข้อความให้สอดคล้องกับสถานะการตรวจสอบได้อย่างไร

20
เหตุการณ์การเปลี่ยนแปลงข้อความ UITextField
ฉันจะตรวจจับการเปลี่ยนแปลงข้อความใด ๆ ในฟิลด์ข้อความได้อย่างไร วิธีการมอบหมายให้shouldChangeCharactersInRangeทำงานได้บางอย่าง แต่ก็ไม่ได้ตอบสนองความต้องการของฉันอย่างแน่นอน เนื่องจากจนกว่าจะส่งคืนใช่ข้อความ textField จะไม่สามารถใช้ได้กับวิธีการสังเกตการณ์อื่น ๆ เช่นในรหัสของฉันcalculateAndUpdateTextFieldsไม่ได้รับข้อความที่ปรับปรุงผู้ใช้พิมพ์ เป็นวิธีการของพวกเขาเพื่อรับสิ่งใดเช่นtextChangedJava event handler - (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string { if (textField.tag == kTextFieldTagSubtotal || textField.tag == kTextFieldTagSubtotalDecimal || textField.tag == kTextFieldTagShipping || textField.tag == kTextFieldTagShippingDecimal) { [self calculateAndUpdateTextFields]; } return YES; }

15
เหตุใดจึงสามารถเข้าถึงตัวแปรสุดท้ายในคลาสที่ไม่ระบุชื่อได้
aสามารถสุดท้ายได้ที่นี่ ทำไม? ฉันสามารถโอนสิทธิaในonClick()วิธีการโดยไม่ต้องทำให้มันเป็นสมาชิกเอกชน? private void f(Button b, final int a){ b.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { int b = a*5; } }); } ฉันจะคืนค่า5 * aเมื่อคลิกได้อย่างไร? ฉันหมายถึง, private void f(Button b, final int a){ b.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { int b = a*5; …

12
การทำความเข้าใจเหตุการณ์และตัวจัดการเหตุการณ์ใน C #
ฉันเข้าใจวัตถุประสงค์ของเหตุการณ์โดยเฉพาะอย่างยิ่งในบริบทของการสร้างส่วนต่อประสานผู้ใช้ ฉันคิดว่านี่เป็นต้นแบบสำหรับการสร้างกิจกรรม: public void EventName(object sender, EventArgs e); ตัวจัดการเหตุการณ์ทำอะไรทำไมพวกเขาต้องการและฉันจะสร้างได้อย่างไร

10
ความแตกต่างระหว่าง e.target และ e.currentTarget
ฉันไม่เข้าใจความแตกต่างพวกเขาทั้งคู่ดูเหมือนกัน แต่ฉันคิดว่าพวกเขาไม่เหมือนกัน ตัวอย่างใด ๆ ที่จะใช้เมื่อใดจะได้รับการชื่นชม

8
jQuery - ตรวจจับการเปลี่ยนแปลงค่าในช่องอินพุตที่ซ่อนอยู่
ฉันมีช่องข้อความที่ซ่อนอยู่ซึ่งค่าจะได้รับการปรับปรุงผ่านการตอบกลับ AJAX <input type="hidden" value="" name="userid" id="useid" /> เมื่อค่านี้เปลี่ยนแปลงฉันต้องการเริ่มการร้องขอ AJAX ทุกคนสามารถให้คำแนะนำเกี่ยวกับวิธีตรวจจับการเปลี่ยนแปลงได้หรือไม่? ฉันมีรหัสต่อไปนี้ แต่ไม่ทราบวิธีการค้นหาค่า: $('#userid').change( function() { alert('Change!'); })

14
Android: ความแตกต่างระหว่าง onTceptTouchEvent และ dispatchTouchEvent หรือไม่
ความแตกต่างระหว่างonInterceptTouchEventและdispatchTouchEventใน Android คืออะไร? ตามคู่มือผู้พัฒนา android ทั้งสองวิธีสามารถใช้เพื่อสกัดเหตุการณ์การสัมผัส ( MotionEvent) แต่ความแตกต่างคืออะไร วิธีทำonInterceptTouchEvent, dispatchTouchEventและonTouchEventโต้ตอบกันอยู่ในลำดับชั้นของผู้ชม (กViewGroup)?


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

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 ได้อย่างไร

4
ตัวจัดการเหตุการณ์หยุดการรวบรวมขยะหรือไม่?
หากฉันมีรหัสต่อไปนี้: MyClass pClass = new MyClass(); pClass.MyEvent += MyFunction; pClass = null; pClass จะถูกรวบรวมขยะหรือไม่ หรือมันจะแขวนรอบยังคงยิงเหตุการณ์เมื่อใดก็ตามที่พวกเขาเกิดขึ้น? ฉันจะต้องทำสิ่งต่อไปนี้เพื่ออนุญาตการเก็บขยะหรือไม่ MyClass pClass = new MyClass(); pClass.MyEvent += MyFunction; pClass.MyEvent -= MyFunction; pClass = null;

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