Чтобы ответить на ваш вопрос, попробуйте использовать командную строку Firebug. Это позволит вам использовать JavaScript для быстрого захвата элемента по идентификатору, а затем перебирать его слушателей. Часто при использовании с console.log вы даже сможете получить определения функций.
Теперь, чтобы защитить ненавязчивого:
Преимущество, которое я нахожу в ненавязчивом JavaScript, заключается в том, что мне намного легче увидеть DOM таким, какой он есть. Тем не менее, я чувствую, что, как правило, плохая практика - создавать анонимные функции (за небольшим исключением). (Самая большая ошибка, которую я нахожу с JQuery, на самом деле заключается в их документации. Анонимные функции могут существовать в мире преград, где сбой не приводит к полезному выводу, хотя JQuery сделал их стандартными.) Обычно у меня есть политика использования только анонимных функций если мне нужно использовать что-то вроде bindAsListener из Prototype.
Кроме того, если файлы JS правильно разделены, они будут адресованы только одному подмножеству DOM одновременно. У меня есть библиотека "упорядоченный флажок", она находится в только одном файле JS, который затем повторно используется в других проектах. Я также обычно использую все методы данной библиотеки в качестве методов-членов объекта JSON или класса, и у меня есть один объект / класс на файл js (как если бы я делал все на более формализованном языке ). Если у меня возникнет вопрос о моем «коде проверки формы», я посмотрю на объект formValidation
в formvalidation.js.
В то же время я согласен с тем, что иногда вещи могут становиться тупыми, особенно когда имеешь дело с другими. Но неорганизованный код - это неорганизованный код, и его невозможно избежать, если вы не работаете самостоятельно и не являетесь хорошим программистом.
В конце концов, я бы предпочел использовать /* */
, чтобы закомментировать большинство из двух или трех файлов js, чтобы найти некорректно работающий код, а затем просмотреть HTML-код и удалить атрибуты onclick.