2011-11-06 88 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,我假設你沒有)。同源策略阻止父頁面「查看」存儲在其他域中的幀的內容。