jQueryイベントを追加した場合、たとえばclick():
$(element).click(function() {
debugger;
//Some code
});
ブレークポイントを使用するとき、またはコンソールを使用するときに、DOM要素のプロパティ(Chromeの開発ツールなど)を参照しても、そのクリックイベントを見つけることはできません。例:
console.log(element);
ただし、次のような操作を行うと、要素のイベントを見つけることができることがわかりました。
//Finds all events for <img> tags within the scope of
//the HTML-element with the id "container".
var elementsToFindEventsFor = $("img", $("#container"));
var events = [];
$(elementsToFindEventsFor).each(function(i, element) {
events.push($._data(element, "events"));
});
console.log(events);
jsFiddle: http: //jsfiddle.net/Muskar/Mf9Eb/
これにより、デバッグ時に返された要素のイベントを参照することができますが、デバッグを行うために5行のコードを記述するのはあまり便利ではありません。
それで、私が見つけられなかったjQuery APIからのより読みやすく、書きやすいソリューションがあるかどうかを知りたいのですが?
参照:Firebug(または同様のツール)を使用してJavaScript/jQueryイベントバインディングをデバッグする方法