2009-10-21 31 views
38

Làm cách nào để theo dõi tất cả các sự kiện javascript của trang web?Cách theo dõi hoặc gỡ lỗi tất cả các sự kiện javascript có sẵn

Có khả năng theo dõi tất cả các sự kiện, ngay cả khi không có trình xử lý được đính kèm?

Có công cụ nào ngoài đó, có thể thực hiện việc này không?

Làm rõ:

Ví dụ:

Đối với một đầu vào văn bản tôi có thể thêm một event handler cho onbluronchange.

Nếu tôi (trong trình duyệt) thay đổi giá trị của trường văn bản và để nó, cả hai trình xử lý sự kiện được thực hiện. Bây giờ tôi muốn biết những sự kiện nào khác tôi đã bỏ lỡ (những sự kiện sẽ được thực hiện nếu có một tổ chức sự kiện đính kèm).

Clarification2:

Tôi có thể có được một danh sách (trên một yếu tố nhất định) của tất cả các sự kiện có thể tôi có thể đính kèm một eventhandler?

+0

Đây là những gì tôi sử dụng: http://www.java2s.com/Code/JavaScript/Event-onMethod/CatalogEvent-onMethod.htm –

+0

> ### Tương tự như: [http://stackoverflow.com/questions /570960/how-to-debug-javascript-jquery-event-bindings-with-firebug-or-similar-tool](http://stackoverflow.com/questions/570960/how-to-debug-javascript-jquery- event-bindings-with-firebug-or-similar-tool) –

Trả lời

2

Bạn có thể sử dụng Firebug Profiling Tool trên FF và Web Developer Tool trên IE8 hoặc Developer Tools trên WebKit

EDIT:

Chỉ cần tò mò tuy nhiên, những gì muốn làm gì với những sự kiện đó?

+0

Công cụ dành cho nhà phát triển web cho IE đã thực hiện công việc. cám ơn. –

27

Dưới đây là một kịch bản đơn giản để ghi lại tất cả các sự kiện có sẵn trong bảng điều khiển của trình duyệt:

var ev = '', 
    out = []; 
for (ev in window) { 
    if (/^on/.test(ev)) { 
     out[out.length] = ev; 
    } 
} 
console.log(out.join(', ')); 

Tất nhiên bạn sẽ chỉ nhận được sự kiện của trình duyệt bạn hiện đang sử dụng.

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