DHTML Diver Help

Information

エラートレース

ブラウズ中の画面で、JavaScriptエラーが発生した場合に、その関数呼び出し順を表示します。
(開発時にスクリプト本体に貼り付ける事が多い為、わざと1行におさめています。)

//error trace
window.onerror = Function("try{var R='[trace]\\n';var O=onerror;for(var I=0;50>I;I++){R+=String(O).substr(0,String(O).indexOf('{',0))+'\\n';O=O;O=O.caller;};alert(R);}catch(e){alert(R)}");

要は、エラー発生時のonerrorイベントを取得し、そのcallerを順番に取得してalert表示しているのです。

上記のerror traceスクリプトを実行し、以下のボタンを押すとイメージが掴めるかと思います。


スクリプトソース("a"が宣言されていない為エラーとなる。)

function test1(){return test2()};
function test2(){return test3()};
function test3(){return test4()};
function test4(){return a};

Sponsor