情况如下:
iframe.html
)有一个iframe加载另一个页面时可能会发生JavaScript错误。以下是我所看到的:
Firebug.
document.getElementById('iframe').src = 'iframe-content.html'
)中),则该异常不会显示.。
您可以通过以下步骤复制这一结果:
中。
在#3有什么方法可以显示异常,而不是默默地忽略它呢?(您不能在设置src的JS代码周围使用try/catch,因为这段代码将在页面加载到iframe之前立即返回。)
发布于 2009-03-30 22:21:17
似乎您的iframe页面并没有在第二次加载。或者它是从缓存加载的,错误将被忽略。这很有趣,但我想我找到了绕过它的方法。
function setContent() {
try {
console.log("Loading iframe content");
document.getElementById('iframe').src = 'iframe-content.html?foo=bar';
} catch (e) {
console.log("Caught", e);
}
console.log("Done loading");
}
这样,错误就会出现。
我所做的就是欺骗浏览器,让它认为在url改变后,我正在加载一个全新的页面作为参数。
'iframe-content.html?foo=bar';
您可以用更改的时间戳替换我的"bar“字符串。当然,它可以避免缓存,但也会强制它按照您的意愿生成错误。
https://stackoverflow.com/questions/700208
复制相似问题