2013-03-22 76 views
0

我拼命试图通过其ID位于另一个框架(不是iframe)中获取元素。请参阅以下代码以清楚说明:从不同的框架获取元素

var elem = parent.frames['top'].document.getElementById('mydiv'); 
alert(elem); // returns null 

<div id="mydiv"> 
... 
</div> 

如果我提醒parent.frames['top'].document我得到[object]返回。我在这里错过了什么吗?

+0

可能重复http://stackoverflow.com/questions/1088544/javascript-get-element-from-within-an-iframe – karaxuna 2013-03-22 11:30:57

+1

警报将不会显示你的对象的内容。改用'console.log()'。 – 2013-03-22 11:33:02

+1

这是正确的,因为DOM元素是JS中的对象,而对象的默认字符串表示是'[object <[[Class]]>]'。你在做什么似乎没有错。 – 2013-03-22 11:33:49

回答

0

如果可以使用jQuery。你可以做到这一点,如下

$("some selector", top.frames["frame_name"].document)) 
0

​​3210返回Window对象的代码。所以,你将不得不修改代码为

var elem = parent.frames['top'].window.document.getElementById('mydiv');