1、子頁面通路父頁面元素
parent.document.getElementById('id')和document相關的方法都可以這樣用
2、父頁面通路子頁面元素
document.getElementById('iframeId').contentDocument.getElementsByTagName('table'); contentDocument後可以使用document相關方法
3、子頁面通路父頁面js變量(注:父頁面的js變量需為全局變量)
子頁面var variable = parent.variableParent (variableParent為父頁面定義的變量)
4、父頁面通路子頁面js變量
這部分目前的解決方案是在父頁面設定全局變量,在子頁面進行修改後将子頁面的變量指派給父頁面 。
網上還有一種方法,但我在chrome上試過了,不好使。
1)擷取iframe節點
2)擷取iframe中的變量
示例:
a.html
<iframe id='x' name='x' src='b.html'/>
b.html
<script>
var y='1';
</script>
在a.html中擷取y,則可以通過以下方式
window.frames['x'].y //先擷取frame,在擷取y
或者
document.getElementById('x').contentWindow.y
在iframe 定義了name屬性的情況下:window.frames['x']==document.getElementById('x').contentWindow。