window.onerror是否需要位于当前正在加载的页面的head部分?
我有这段代码(Chrome 64.0.3282.140,linux):
<head>
<script type="text/javascript">
window.onerror = function (errorMsg, url, lineNumber) {
alert(errorMsg + lineNumber);
// alert("This is a stack trace! Wow! --> %s", error.stack);
};
</script>
</head>
<script type="text/javascript">
//var x=document.getElementById("demo").value; //uncomment and run to see
document.write('careless to close the parentheses?'; // ')' is not given
</script>
如果window.onerror位于页面的头部,那么可以很好地工作,但是如果我将它移出<head></head>
,它就会停止工作。如果我尝试将其移动到.js
文件中,它也会停止工作。
有没有办法设置window.onError
外<head>
或其他方式全局捕获来自头外的错误,最好是在单独的.js
库文件中?
答案 0 :(得分:2)
您必须确保docker stack deploy <stack name>
文件必须是要执行的第一个代码。
这就是你把它放在window.onerror
作品中的原因。
您可以将它放在正文中并将其他脚本放在其后面或将其他脚本代码放在
中head
下面的演示将它们放在正文中,window.onload=function(){
//other code
}
是第一个脚本
window.onerror