2010-11-18 11 views

答えて

7

Firebug 1.12がgetEventListeners(target)を導入したことに言及する価値はあります。そのFirebugのwikiページはhereであり、非常に有用なブログ記事はhereです。

(Firebugは1.12のみ2013年8月にリリースされたので、それが最初に掲載されたときに、この質問への答えは正しかった。)

しかし、getEventListenersための注意点がいくつかあります:オフ

まずjQueryオブジェクトを渡すとうまくいきません。その代わりに通常のDOMオブジェクトを渡してください。

第2に、ページのすべてのコードが読み込まれる前に実行すると、getEventListenersが動作しないことがわかりました。私はそれがないと動作しない時を正確にわからないんだけど、私は確かにこのような状況を見てきました:

>>> getEventListeners(document.getElementById('elementid')) 
ReferenceError: getEventListeners is not defined 
>>> $._data(document.getElementById('elementid'), "events"); 
Object { click=[1]} 

あなたは、SOポストにリンクされているから、「手書き」方法を(見ることができるように答えでは)イベントを取得できますが、getEventListenersは定義されていないと表示されます。このエラーは、getEventListenersが実行されてもオブジェクトにリスナーがないと返された場合の戻り値とは異なりますので、まだ利用できない場合は明らかになるので、getEventListenersを恐れることなく使用できます。

1

ファイヤーバグには優れた機能があるとは思わない。あなたはhereを見たいかもしれません。

12

jQueryを使用していて、FireQueryをインストールすると、要素ごとにHTML DOMパネルにすべてのバウンドイベントが表示されます。非常に便利な追加。

+0

さらに、保存しているデータが表示され、現在のバージョンのjQueryを表示しているページに注入するためのコンソールに「jqueryify」ボタンが用意されています。これは非常に便利です。 – Orbling

+1

ありがとうございます。 FireQueryは、優れたツールであり、FirebugでjQueryを使用するすべてのWeb開発者にとって価値があります。 – crmpicco

+1

ある時点で動作が停止したようです...私は最新バージョンのjQueryを使用していますが、その拡張機能では何も見えませんでした。 –

関連する問題