Làm cách nào để tìm hiểu chức năng javascript đang được gọi bởi sự kiện onclick của đối tượng? Thậm chí tốt hơn, sau đó tôi có thể tìm ra tệp .js nào có trong hàm đó không?Làm cách nào để tìm hiểu chức năng javascript đang được gọi bởi sự kiện onclick của đối tượng?
Trả lời
Bạn có thể làm như thế này
Với Javascript Demo on JsFiddle
div1 = document.getElementById('div1');
alert(div1.getAttribute("onclick"));
Với jQuery Demo on JsFiddle
<div id="div1" onclick="myfun();" >
alert($('#div1').attr('onclick'));
Tôi làm điều này bằng Visual Event kịch bản này mà ngay ngắn nêu bật sự kiện nào đã đăng ký mà chức năng trên yếu tố nào.
Để tìm khẩu hiệu của mã, chỉ cần sử dụng FireBug hoặc các công cụ phát triển trình duyệt tương tự để tìm kiếm tên hàm.
Bạn sẽ không thể tìm thấy tệp mà sự kiện onclick được gọi từ nhưng myObject.onclick
sẽ cung cấp cho bạn hàm đang được gọi. Và không, bạn không cần jQuery cho việc này.
Theo như nhận được tên của hàm, điều đó phức tạp hơn một chút. Bạn có thể thử một cái gì đó như thế này, có lẽ:
var myFunc = myObject.onclick, myFuncName = "";
for(prop in window) {
if(window.hasOwnProperty(prop) && window[prop] === myFunc) {
myFuncName = prop; // myFuncName is now the name of the function. This only works if you didn't assign an anonymous function to the click handler.
break;
}
}
Nhưng thành thật mà nói, tôi nghĩ đó là một chút quá mức cần thiết.
Điều đó phụ thuộc vào cách event
được đính kèm.
Nếu bạn đang ràng buộc để onclick
mà không cần một cái gì đó giống như jQuery bạn có thể làm điều này:
var obj = document.getElementById('elementId');
console.log(obj.onclick);
tôi sử dụng Công cụ nhà phát triển Chrome cho việc này:
Kiểm tra click
hộp, và sau đó nhấp vào phần tử trên trang bạn muốn tìm trình xử lý. Nếu bạn đang sử dụng jQuery (hoặc thư viện tương tự), bạn có thể phải bước qua mã của họ trước khi bạn nhận được mã của bạn.
Tôi chưa bao giờ biết điều này tồn tại trong chrome.Điều này thật tuyệt vời và trả lời câu hỏi cho tôi. – circlecube
Cảm ơn bạn đã thông báo cho chúng tôi về công cụ này, nhưng trong phương thức này, phương pháp này hữu ích nếu nó định hướng cho tôi dòng mã từ thư viện jQuery. Cách biết phần nào của mã MY đang chạy. –
@whitelettersandblankspaces Cách duy nhất tôi biết hiện tại là bước qua mã của jQuery cho đến khi bạn nhận được mã của bạn. – benekastah
- 1. Cách tìm hiểu sự kiện JavaScript nào được kích hoạt?
- 2. Chức năng không gọi trong một sự kiện onclick
- 3. Javascript tìm chức năng gọi
- 4. sự kiện onclick javascript trên đối tượng flash
- 5. JavaScript - onclick sự kiện nhận được gọi là tự động
- 6. Gọi hai chức năng từ cùng onclick
- 7. Làm thế nào để gọi một asp: Nút OnClick sự kiện bằng cách sử dụng JavaScript?
- 8. Tìm hiểu số lượng bộ nhớ đang được sử dụng bởi một đối tượng trong C#?
- 9. Tìm hiểu Nếu một chức năng đã được gọi là
- 10. Tìm hiểu xem đối số chức năng có phải là một phần của cuộc gọi hàm
- 11. Làm cách nào để tìm hiểu chức năng nào được gọi khi nhấn nút trong Bảng điều khiển Chrome?
- 12. Đối tượng Javascript mới (chức năng) vs gọi nội dòng
- 13. Làm cách nào để gọi các chức năng của một đối tượng trong cùng một đối tượng?
- 14. Làm cách nào để truyền một đối tượng sự kiện đến một hàm trong Javascript?
- 15. Làm thế nào để thêm sự kiện onclick vào nút trong listview được thêm bởi addFooterView?
- 16. Chức năng gọi đối tượng Javascript từ chính nó
- 17. Làm cách nào để đính kèm sự kiện OnClick cho hộp văn bản được tạo javascript?
- 18. Javascript Chức năng và đối tượng
- 19. JQuery: Tại sao chức năng JavaScript/Tài liệu sẵn sàng không phô trương thay vì sự kiện OnClick?
- 20. chức năng javascript đang chạy mà không bị gọi là
- 21. Làm cách nào để kích hoạt sự kiện/chức năng quay lại của trình duyệt bằng JavaScript?
- 22. javascript onclick, chức năng ẩn danh
- 23. Làm cách nào để gỡ lỗi các sự kiện JAVASCRIPT? Hoặc làm thế nào để làm cho tất cả các chức năng gọi dấu vết?
- 24. Chức năng onclick của Chrome và JS?
- 25. Tìm hiểu chức năng javascript nào được kích hoạt khi nhấp vào ...
- 26. Đang cố gắng tìm hiểu: Định hướng lại đối tượng và các chức năng chung trong LISP!
- 27. Chức năng gọi từ một đối tượng?
- 28. Chức năng setTimeout của Javascript không gọi
- 29. JavaScript window.opener gọi chức năng cha mẹ
- 30. Làm cách nào để biết hành động của tôi có đang được gọi bởi RenderAction không?
Để rõ ràng, bạn có đối tượng DOM và bạn muốn biết nó hoạt động như thế nào? Bạn đã thử 'someObject.onclick' hoặc' someObject.getAttribute ("onclick") '? Bạn không thể biết nó xuất phát từ đâu, vì mã JS không biết gì về nó xuất phát từ tập tin nào. – apsillers
có thể trùng lặp của [Làm cách nào để kiểm tra xem có bất kỳ trình xử lý sự kiện JavaScript/trình xử lý nào được đính kèm với một phần tử/tài liệu không?] (Http://stackoverflow.com/questions/2382994/how-to-check-if-any-javascript-event- listener-handlers-attached-to-an-element-d) –
@Diodeus: câu hỏi đó là khác nhau - đó là về cách sử dụng jQuery để có được các sự kiện bị ràng buộc, trong khi OP đang tìm kiếm một devtool trình duyệt thay thế. –