gpt4 book ai didi

javascript - 在单独的框架中执行 Javascript

转载 作者:行者123 更新时间:2023-11-30 06:44:09 26 4
gpt4 key购买 nike

Internet Explorer 6/7/8。

我正在使用 eval() 调用来确保代码在多框架网站的特定框架的上下文中执行。

我遇到的情况是,我基本上是将 FrameA 中方法的完全限定名称传递给 FrameB。然后我希望 FrameB 在 FrameA 中执行所述方法 - 但从 FrameA 的上下文中执行。这是至关重要的,因为 IE 内部的限制可能会导致“释放脚本”错误。请参阅:Can't execute code from a freed script

FrameB 首先使用 eval 获取目标框架对象,然后对结果对象调用 eval 以执行该框架内的方法。因此,请考虑从 FrameB 内部执行以下操作:

eval("top.FrameA").eval("SomeMethod(1,2);");

第一个 eval 返回一个窗口对象,但对第二个 eval 的调用总是导致“预期对象”错误。

有趣的是,上面的代码在 inside FrameA 中运行,但实际上是通过以下代码在 FrameB 内部执行的:

top.FrameB.eval("eval('top.FrameA').eval('SomeMethod(1,2);');");

因此问题与 eval 语句的嵌套有关。

我在这里错过了什么?

最佳答案

我不是 100% 清楚我是否理解你的问题,但请查看本页的最后一部分:

http://www.infimum.dk/HTML/JSwindows.html

希望对你有帮助。

关于javascript - 在单独的框架中执行 Javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8422327/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com