1

アプリのボタンをクリックすると、一連のJavascriptコードが実行されます。この特定のケースでは、[キャンセル]ボタンをクリックして、現在開いているモーダルウィンドウを閉じます。このcloseボタンは、HTMLでは次のようになります。

<a class="cancel close">Cancel</a>

私が必要としているのは、<a>このDOM要素(イベントが要素にバインドされている場所)への参照を.jsファイルで調べることなく、Javascriptでこの要素をクリックするアクションによって「トリガー」されたものを追跡する方法<a>です。

ユーザーがイベントを生成した後、Javascriptにある種のブレークポイントを作成する方法はありますが、そのJavascriptコードがどこにあるのかわかりませんか?そのコードがどこにあるかを実際に見つけるために。

JavascriptのデバッグにGoogleChrome/DeveloperToolsを使用しています。

4

2 に答える 2

3

開発者コンソールを開きます。[スクリプト]タブに切り替えます。(行番号の)左側の余白をクリックして、ブレークポイントを設定します。スクリプトの実行はブレークポイントで一時停止し、コールスタックやローカル変数などを調べることができます。

または、イベントをトリガーする前に[一時停止]をクリックすると、スクリプトが実行されるとすぐにスクリプトの実行が一時停止し(グローバルブレークポイントの設定など)、コードが表示されます。次に、現在の関数/式を再開、ステップオーバー、ステップイン、またはステップアウトできます。

これは、Firebugと、Safari、Chrome、Opera、IEの組み込みコンソールで実行できます。

編集:追加する必要があります。一時停止ボタンは、 [再開]をクリックするまでスクリプトの実行を停止するため、JavaScript駆動のアニメーション、ajaxポーリング、または間隔を置いて呼び出されるその他のコードがある場合は、一時停止ボタンの有用性が低くなります。したがって、たとえば、アニメーションの更新関数が呼び出されると、おそらく、関心のあるコードをトリガーする機会が得られる前に一時停止します。

ただし、ほとんどの(すべてではないにしても)開発者コンソールには、「例外で中断」および「キャッチされなかった例外で中断」オプションもあります。一時停止ボタンと同様に、問題が発生した場合にのみ停止することを除けば、グローバルブレークポイントがあるようなものです。したがって、検索しようとしているコードがエラーの原因であるか、例外をスローしている場合は、それが発生したときにスクリプトを一時停止するようにデバッガーを設定できます。

于 2012-06-21T16:04:50.857 に答える
0

FirebugはFFのオプションです。

http://getfirebug.com/doc/breakpoints/demo.html

于 2012-06-21T16:02:45.027 に答える