访问iframe中的frameset元素

时间:2011-11-06 05:34:03

标签: javascript jquery dom iframe

我正在尝试访问框架集内的frame src属性。但是document.getElementById('cntvars')。firstChild为null。如何进入子元素?

<iframe id="cntvars" onload="prstofrm();" src="http://sites.google.com" style="display:none"></iframe>
    <html>
        <head></head>
            <frameset rows="100%,*" border="0">
                <frame src="http://sites.google.com?qty=13.00&amp;sub=7.24&amp;shp=0.00&amp;dis=0.00&amp;vch=0.00&amp;tax=0.00&amp;tot=7.24&amp;sd=" frameborder="0">
                <frame frameborder="0" noresize="">
            </frameset>
            <!-- pageok -->
            <!-- 04 -->
            <!-- -->
    </html>
</iframe>

2 个答案:

答案 0 :(得分:2)

你不能(除非你在谷歌工作并为sites.google.com编写代码,我认为你不是这样)。同源策略阻止父页面“查看”存储在其他域上的帧的内容。

答案 1 :(得分:0)

要访问框架集内的文档元素,您可以使用

var iframeEl = document.getElementById('cntvars');
var iframeDoc = iFrameEl.document | iFrameEl.documentElement

http://xkr.us/articles/dom/iframe-document/

让它适用于所有浏览器的最明智的方法是为你的框架和iframe命名并使用window.frames['frameName']访问它,这将指向该框架的窗口对象。此外,您可以通过索引引用它们,因此如果这是该页面的所有HTML,您可以使用window.frames[0].frames[1]访问框架集内的空框架