单个浏览器选项卡中的多个Javascript解释器

时间:2011-02-01 01:16:57

标签: javascript html browser

是否可以在浏览器窗口的单个选项卡中运行多个JavaScript解释器(引擎)?怎么样?

我已经查看过iframe但是无法调用javascript解释器的单独实例。

3 个答案:

答案 0 :(得分:4)

您可能需要查看Web Workers。这些分区执行Javascript,但有一种非常明确的交互方式。

答案 1 :(得分:2)

每个不同的页面都有自己的全局环境。相关页面以各种方式链接(window.parent,框架元素等)。如果父页面包含辅助页面作为<iframe>标签的内容(或者在旧式框架集设置中,我在十多年内没有做过:-)那么每个框架中的页面都有他们自己独特的window对象,以及他们自己的框架,工具等副本。

当您执行document.getElementById("whatever")之类的操作时,这仅限于调用它的全局上下文。类似地,每个框架都有自己的JavaScript环境,并拥有各种JavaScript“本机”构造函数的独特副本。也就是说,一帧中的“数组”是另一帧中与“数组”不同的对象。

@Jarrod N提到网络工作者也可能对你很感兴趣。

答案 2 :(得分:0)

正如Pointy所说,每个不同的页面都有自己的全球环境。所以iframe也有自己的Javascript环境。

我使用iframe的测试失败了,因为我没有等待iframe中的Javascript /网页完全加载,然后才从主页面调用它。

P.S。 WebWorkers略显复杂,对我的项目所需的支持较少。不过,它看起来是未来项目的一个很好的解决方案。