国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

JS中FRAME的操作問題實例分析

2019-11-20 14:00:33
字體:
來源:轉載
供稿:網友

本文實例探討了JS中FRAME的操作問題,分享給大家供大家參考。具體分析如下:

以上圖為例,在這里把frame之間的互相操作簡單列為:1變量2方法3頁面之間元素的互相獲取。

一、  首先從 父(frameABC)------->子(frameA,frameB,frameC)

① 訪問變量名name

假如在frameABC中操作那么可以:

復制代碼 代碼如下:
window.frames("frameA").contentWindow.name

或者

復制代碼 代碼如下:
document.getElementById("frameA").contentWindow.name

或者

復制代碼 代碼如下:
jquery:window.$("#frameA")[0].contentWindow.name

② 訪問方法func

假如在frameABC中操作那么可以:            

復制代碼 代碼如下:
window.frames("frameA").contentWindow.func();

或者

復制代碼 代碼如下:
document.getElementById("frameA").contentWindow.func();

或者

復制代碼 代碼如下:
jquery:window.$("#frameA")[0].contentWindow.func();

③ 訪問子頁面元素:username

假如在frameABC中操作那么可以:            

復制代碼 代碼如下:
window.frames("frameA").contentWindow.document.getElementById("username");

或者

復制代碼 代碼如下:
document.getElementById("frameA").contentWindow.document.getElementById("username");

或者

復制代碼 代碼如下:
jquery:window.$("#frameA")[0].contentWindow.$("#username");

二、 然后從子(frameA,frameB,frameC)------------>到父(frameABC)

① 訪問父頁面變量name,假如在frameA中(子頁面)操作那么可以:

復制代碼 代碼如下:
window.parent.name;

② 訪問父頁面方法func,假如在frameA中(子頁面)操作那么可以:

復制代碼 代碼如下:
window.parent.func();

③ 訪問父頁面元素username,假如在frameA中(子頁面)操作那么可以:

復制代碼 代碼如下:
window.parent.$("#username")

或者:

復制代碼 代碼如下:
window.parent.document.getElementById("username");

總結:

frame只是一個頁面框架,要想操作子frame中的元素都需要首先進入到window或者contentWindow。從子頁面訪問父頁面,需要計算好父子關系,分幾層結構。

在網上看了其他帖子,談到有關頁面加載的問題。大概意思是在子frame頁面還沒加載出來就進行元素操作,會引起bug,感興趣的朋友可以針對性的測試一下,相信會有新的收獲!

希望本文所述對大家的javascript程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 外汇| 西和县| 乌鲁木齐县| 莎车县| 和硕县| 夏河县| 睢宁县| 兰溪市| 南阳市| 旬邑县| 阳西县| 奉节县| 商城县| 广丰县| 平顶山市| 上高县| 乌兰县| 班戈县| 三门峡市| 西乌| 河池市| 靖宇县| 扶绥县| 湟中县| 陆河县| 福清市| 黔西县| 阜康市| 鲁甸县| 张掖市| 灵寿县| 竹北市| 康乐县| 通化县| 筠连县| 神池县| 都匀市| 聂荣县| 丰城市| 林西县| 伊宁县|