首頁  >  文章  >  web前端  >  iframe的父子視窗之間的物件相互呼叫基本用法_javascript技巧

iframe的父子視窗之間的物件相互呼叫基本用法_javascript技巧

WBOY
WBOY原創
2016-05-16 17:23:431155瀏覽

使用iframe的時候,可能會涉及到父子窗口之間傳值和方法的相互調用,之前一直有些迷糊,也沒著意去弄清楚,這兩天要幹活,沒法子了只好把這都弄明白了。其實非常簡單,就那麼幾個用法,幾句程式碼而已。

子視窗中呼叫父視窗的js方法:

複製程式碼 程式碼如下:

程式碼如下:
parent.changeBtnTitle('tzgg');


一個父窗口中可能會有若干個功能行為類似的子窗口,子窗口中的組件要調用相同或類似的對象或者方法,那麼就把這樣的方法寫在父視窗中,透過傳遞參數來達到不同的效果。

父視窗取得子視窗中的某個物件:

首先要取得子視窗的iframe對象,例如: 代碼如下:


var frameName = window.frames["frameId"]


然後要取得該子視窗的document值,然後就可以呼叫子視窗中的物件了。在父親視窗中使用時為避免重複書寫,不妨寫成一個方法: 程式碼如下:



程式碼如下:


程式碼如下:

程式碼如下: getSubWindowObj = function(moduleName){ return window.frames["iframe" moduleName].document.getElementById("moreorless" moduleName); }
用了一個參數,只因為我的iframeId和子視窗的物件Id名字起的有規律,只要傳入一個參數拼接之後就可以餓了。

同樣,子頁面呼叫父頁的元素,可以使用以下程式碼:

複製程式碼 程式碼如下: parent.window.document.getElementById('parentMenu'); //簡寫parent.document.getElementById('parentMenu'); parent.document.getElementById('parentMenu');
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn