0

IE で問題が発生しています。javascript を使用して子ウィンドウを開き、子ウィンドウに onerror イベントをアタッチすると、子ウィンドウの OnLoad で JS エラーがキャッチされません。以下のコードは FF で正常に動作しています。コード例は次のとおりです。

親ページ:

<html>
<head>
<script>
function openpage()
{
    console.log('opening');
    var w = window.open('demo2.html', '_blank');
    //without setTimeout onerror is not working
    setTimeout(function(){w.onerror = function(msg, file, line) { alert(msg); };}, 3000)
    //w.onerror = function(msg, file, line) { alert(msg); };
}
</script>
</head>
    <body>
        <input type="button" onclick="openpage()" />
    </body>
</html>

子ページのコード (demo2.html):

<html>
<head>
<script>
//function with error
function fun(var1,var2){aler(var1);}
</script>
</head>
    <body onload="fun(2,3)">
        <input type="button" onclick="fun(2,3)" />
    </body>
</html>

上記の方法が有効でない/正しくない場合、子ページで生成された JS エラーをキャプチャする方法を提案してください。

ありがとう、パンカイ

4

0 に答える 0