2011-11-06 72 views
1

我试图访问frameset中的frame src属性。但是document.getElementById('cntvars')。firstChild为null。我如何介入子元素?在iframe中访问frameset元素

<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> 

回答

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]访问框架集中的空框架。

2

您不能(除非您在Google和编写代码sites.google.com,我假设你没有)。同源策略阻止父页面“查看”存储在其他域中的帧的内容。