gpt4 book ai didi

Javascript/jQuery : calling function in another frame

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:38:15 25 4
gpt4 key购买 nike

我是 DOM 和 JavaScript 的新手,在尝试从顶级框架或 Firebug 的上下文调用框架中定义的函数时遇到了一些问题。

给定以下框架集:

<html>
<body>
<frameset cols="*" rows="81,*">
<frame id="topFrame" tabindex="1" name="topFrame" noresize="noresize" scrolling="No" src="hometop.aspx"/>
<frameset border="0" cols="214,*" frameborder="no" framespacing="0">
<frameset border="0" cols="*" frameborder="no" framespacing="0" rows="70,*">
<frame tabindex="-1" id="chatFrame" name="chatFrame" scrolling="No" noresize="noresize" src=""/>
<frame tabindex="-1" id="leftFrame" name="leftFrame" noresize="noresize" src="leftFrame.aspx"/>
</frameset>
<frame tabindex="-1" id="mainFrame" name="mainFrame" src=""/>
</frameset>
<noframes>Your browser does not support frameset.</noframes>
</frameset>
</body>
</html>

我正在尝试编写一个 javascript Hook ,当首次打开上述文档时,它将调用 #leftFrame 中定义的 javascript 函数。我在加载了 jQuery 的 Firebug session 中执行此操作。

jQuery("#leftFrame") 返回框架 DOM 元素。现在我想在框架的上下文中执行我的函数(openLink,在 leftFrame.aspx 中的普通旧脚本标记中定义)。我的理解是该函数将是 leftFrame 文档元素下的一个 DOM 节点。但是我无法获得框架的文档。

我试过:

 jQuery("#leftFrame").document
jQuery("#leftFrame").contentDocument
jQuery("#leftFrame").find("html")

此外,在 Firebug 中检查 DOM 树时,我无法在任何 DOM 节点下看到 openLink 函数,正如我所期望的那样。

谁能帮帮我?

最佳答案

$('#leftFrame')[0].contentWindow.document
$('#leftFrame')[0].contentWindow.functionName()

以上应该有效。 jQuery 的 contents() 仅适用于 iframe 节点,因此您必须像那样引用它。

关于Javascript/jQuery : calling function in another frame,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3501080/

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