清洁例子。
主要文件:
<script type="text/javascript">
function catchError(fn) {
try {
fn();
}
catch (e) {
console.log('catched in catchError '+e.message);
}
}
</script>
<iframe src="child.html" id="child"></iframe>
child.html:
<script type="text/javascript">
function throwError() {
throw new Error('testing');
}
parent.catchError(throwError);
</script>
所有其他浏览器(包括ie9)正确地提供了阻止阻止的错误。 IE8只是不这样做并记录错误,就好像try-catch块丢失一样。
您有任何想法或修正吗?也许是ie8设置的问题?也许你可以提供一种解决方法?