2013-04-10 39 views
13

Trình xử lý sự kiện có được thực hiện đồng bộ hoặc không đồng bộ trong JavaScript không? Đây là JS bin cho thấy trình xử lý sự kiện được thực hiện đồng bộ.Gọi đồng bộ hoặc không đồng bộ của trình xử lý sự kiện trong javascript

Code:

$('#toclick').bind('custom', function() { 
    for (var i=0; i<100000; i++) {} 
    console.log('Inside click handler'); 
}); 

$('#toclick').trigger('custom'); 
console.log('Outside click handler'); 

Output: 
Inside click handler 
Outside click handler 

Điều này có nghĩa nếu chúng ta kích hoạt một sự kiện, mã bên dưới nó sẽ không được thực hiện trừ khi tất cả các xử lý sự kiện được thực thi. Tôi có đúng không?

Bin with multiple event handlers

+2

tất cả các sự kiện đều đồng bộ. Bạn cũng có thể muốn xem xét tuyên truyền sự kiện http://www.quirksmode.org/js/events_order.html – Ejaz

Trả lời

13

Đúng vậy. Tất cả các trình xử lý sự kiện được kích hoạt đồng bộ và theo thứ tự ràng buộc.

+0

Cảm ơn freakish! Chỉ bị bối rối. Cảm ơn bạn đã làm rõ. – sachinjain024

8

Một số trình xử lý sự kiện được thực thi đồng bộ và các trình xử lý khác không đồng bộ. Xem DOM-Level-3-Events

+2

Cảm ơn thông tin hữu ích. Trên một mặt lưu ý, liên kết chỉ có câu trả lời là nản lòng. Vui lòng thử thêm thông tin vào câu trả lời. Dù sao cũng cảm ơn!! – sachinjain024

Các vấn đề liên quan