Начальная точка Javascript - PullRequest
2 голосов
/ 17 ноября 2011

Есть ли способ заставить мой браузер сказать мне, какой первый javascript выполняется, когда я нажимаю, например, на div.

Позвольте мне разбить его,

Пример кода:

<div id='hello'> Hi There </div>
jQuery('hello').bind('click', function() { alert('hello') });

Приведенный выше код будет естественно отображать привет, когда я нажму на него. Но есть ли способ заставить firebug или консоль в Chrome автоматически ломаться при первом же самом вызове javascript без явного задания точки останова.

На сложных веб-страницах javascript существует множество привязок, но требуется несколько часов, чтобы найти действительный код, стоящий за ним.

Ответы [ 2 ]

1 голос
/ 17 ноября 2011

вы можете получить все события элемента с помощью console.log($(element).data("events"));

1 голос
/ 17 ноября 2011

Итак, если я слежу за вопросом, у вас есть такой сценарий:

jQuery('#hello') //function call 1
    .bind('click', function(){ function call 2
        alert('hello');
    });

Один из способов сделать это - переопределить функцию, которую вы хотите протестировать.Вы кешируете реальную функцию, перезаписываете ее своей для отладки, затем выполняете кеш с исходными аргументами.

(function(){
    var _jquery = jQuery;
    jQuery = function(){
        console.log('debug');
        _jquery(arguments);
    }
})();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...