2013-05-13 111 views
0

我在Chrome中遇到Iframes问题。我在页面中有3个Iframe。我试图从另一个访问一个Iframe的元素。无法从页面上的其他iframe访问iframe元素

我使用这个代码:

navFrame = window.parent.frames[0]; 
lnkTags = navFrame.document.getElementsByTagName('a'); 

我正在以下错误:不能调用未定义

方法'getElementsByTagName'我在window.parent将无法​​在Chrome工作论坛阅读。有没有可能以不同的方式做

回答

0

您需要使用contentWindow属性,像这样:

navFrame = window.parent.frames[0]; 
lnkTags = navFrame.contentWindow.document.getElementsByTagName('a'); 
+0

我碰到下面的错误,如果我使用contentWindow属性:navFrame = window.parent.frames [0] .contentWindow; 不安全的JavaScript尝试使用URL文件访问框架:/// C:/Program%20Files/HNet/Publications/Title.htm#从具有URL文件的框架中获得:/// C:/ Program%20Files/HNet/Publications/Hyper .Net_Features _-_ doc_d4779823 /主题/ 4.1_Fonts/breadcrumb.htm。域,协议和端口必须匹配。 – gullamahi 2013-05-13 07:43:24

+0

这是另一个问题。请阅读“跨域脚本”。在你的情况下,你可以通过从'localhost'运行你的网站而不是'file:// ...'来轻松解决这个问题。' – haim770 2013-05-13 07:48:11

+0

谢谢你的评论。我需要从本地计算机和本地主机都可以使用它。它从本地主机运行,但不是从本地计算机运行。 Chrome浏览器中的iframe始终都是contentWindow。有没有铬的特定属性来获取Iframe的文档对象。 – gullamahi 2013-05-13 08:02:08