1. 程式人生 > >iframe 框架 父頁面與子界面之間的變量、函數、元素獲取

iframe 框架 父頁面與子界面之間的變量、函數、元素獲取

父頁面 mes 訪問 框架 document ref ie8 對象 bsp

1、獲取頁面上的iframe

  1-1、 document.getElementById(‘iframeId‘);

  1-2、 window.frames[0]、window.frames[‘frameName‘]、frames[‘frameName‘]、frames[0]、self.frames[0],此處self與window等價,相當於本頁面的window對象。

  1-3、 contentWindow、contentDocument兩個屬性,也是可以用來獲取子窗口,

     contentWindow 兼容各個瀏覽器,可取得子窗口的 window 對象。

     contentDocument Firefox 支持,> ie8 的ie支持。可取得子窗口的 document 對象。

2、子頁面訪問父頁面元素:

  parent.document.getElementById(‘id‘)和document相關的方法都可以這樣用 ;

3、父頁面訪問子頁面元素:

  document.getElementById(‘iframeId‘).contentWindow.document.getElementById("id"); contentWindow後跟document相關方法
  window.frames[0].contentWindow.document.getElementById("id");

4、子頁面訪問父頁面變量:

  parent.a; 或者調用 父頁面有返回值的函數解決。

5、父頁面訪問子頁面變量:

  父頁面聲明全局變量,子頁面復制修改;或者調用子頁面有返回值的函數解決。

  frames[0].a;

6、子頁面訪問父頁面方法:

  window.parent.parentMethod();

7、父頁面訪問子頁面方法:

  document.getElementById(‘iframeId‘).contentWindow.iframeMethod();
  frames[0].iframeMethod();

8、兄弟框架之間調用:

  self.parent.frames[‘child1‘];
  self.parent.frames[‘child2‘];

9、多層框架的調用:

  window.frames[0].frames[2];
  window.frames[‘child_1‘].frames[‘sub_child_3‘];

iframe 框架 父頁面與子界面之間的變量、函數、元素獲取