1、window.parent 是iframe頁(yè)面調(diào)用父頁(yè)面對(duì)象
舉例: a.html
<html>
<head><title>A</title></head>
<body>
<form name=”form1″ id=”form1″>
<input type=”text” name=”username” id=”username”/>
</form>
<iframe src=”b.html” width=100%></iframe>
</body>
</html>
如果我們需要在b.html中要對(duì)a.html中的username文本框賦值(就如很多上傳功能,上傳功能頁(yè)在ifrmae中,上傳成功后把上傳后的路徑放入父頁(yè)面的文本框中),我們應(yīng)該在b.html中寫(xiě):
<script type=”text/javascript”>
var _parentWin = window.parent;
_parentWin.form1.username.value = “xxxx”;
</script>
2、window.opener 是 window.open 打開(kāi)的子頁(yè)面調(diào)用父頁(yè)面對(duì)象
opener:對(duì)打開(kāi)當(dāng)前窗口的window對(duì)象的引用,如果當(dāng)前窗口被用戶打開(kāi),則它的值為null。
self代表自身窗口,opener代表打開(kāi)自身的那個(gè)窗口,比如窗口a.html打開(kāi)窗口b.html。如果靠window.open方法,則對(duì)于窗口b.html,self代表b.html自己,而opener代表窗口a.html。
舉例:a.html
<input type=”text” name=”username” id=”username”/>
<a onclick=”window.open(this.href,”,’resizable=yes,width=800,height=600,status’); return false” href=”b.html”>B</a>
如果需要在b.html中對(duì)a.html中的表單元素賦值,我們應(yīng)該在b.html中這么寫(xiě)
<a href=”javascript:try{window.opener.document.getElementById(‘username’).contentWindow.
frames[0].document.getElementsByTagName(‘body’)[0].innerHTML+=’xxx‘}catch(e){};window.close();“>插入</a>
在后面用window.close關(guān)閉b.html。WindsPhoto 2.7.3 中在文章編輯頁(yè)面彈出新窗口(圖片列表)后,選擇插入已上傳圖片便是如此實(shí)現(xiàn)的。
更多信息請(qǐng)查看IT技術(shù)專(zhuān)欄