这只是一种想法,但是在DIV上使用IFRAME实际上会使该元素与窗口隔离,从而使在IFRAME中运行的缓慢脚本不会影响其他框架/窗口吗?
发布于 2010-04-20 14:31:09
是的,对于第一部分,iframe会“排序”将你的窗口与iframe中的脚本隔离开来。但是,仍然可以通过window.parent访问父窗口。
对于第二部分:不,它不会让iframe中的脚本变得太慢,不会影响其他框架/窗口。您的主窗口对象及其子节点都在同一线程中运行。JavaScript是单线程的忽略webworkers在这种情况下,你不能在它们之间传递dom元素,所以你可以访问父窗口/子iframe的窗口对象的唯一原因是因为它们在同一个线程上。
举个简单的例子:
src="iframe.html" window.onload = function(){ while(1){} }; 来源:
我也尝试过这样的多线程。吃苦耐劳的学习=)
发布于 2015-11-19 12:41:50
在新的浏览器中,可以使用sandbox属性将iframe与页面的其余部分隔离开来
http://www.w3schools.com/tags/att_iframe_sandbox.asp
https://stackoverflow.com/questions/2672484
复制相似问题