在Firefox中,如果我使用frames[i].document.readyState
,即使框架正在执行Javascript,它也会说完。
有没有办法检测Javascript是否在框架中执行?
答案 0 :(得分:2)
框架与其所有者在同一个线程上运行。您可以通过让子帧运行一个长循环来验证这一点,而父节点在短计时器上执行一些代码 - 您会注意到父节点必须等到循环结束才能执行其回调。
这意味着子框架及其父框架无法同时执行脚本。在子帧中的JavaScript完成执行之前,您的检查不会运行。
答案 1 :(得分:1)
var in_iframe = window != window.top;