iframe和frame的區別及框架間的資料呼叫

2021-09-05 01:27:50 字數 2221 閱讀 8470

1、frame不能脫離frameset單獨使用,iframe可以; 

2、frame不能放在body中;如下可以正常顯示:   

如下不能正常顯示: 

3、巢狀在frameset中的iframe必需放在body中;如下可以正常顯示: 

如下不能正常顯示:   

4、不巢狀在frameset中的iframe可以隨意使用; 

如下均可以正常顯示:   

5、frame的高度只能通過frameset控制;iframe可以自己控制,不能通過frameset控制,如:   

6、如果在同乙個頁面使用了兩個以上的iframe,在ie中可以正常顯示,在firefox中只能顯示出第乙個;使用兩個以上的frame在ie和firefox中均可正常 

7、iframe的使用比較靈活自由,但是支援frame的瀏覽器比較多

frame是把網頁分成多個頁面的頁面。它要有乙個框架集頁面frameset   

iframe是乙個浮動的框架,就是在你的頁面裡再加上乙個頁面,

用於全頁面   

用於區域性

frameset和iframe框架之間如何互調資料

(1)獲得html頁面上的frame

window.frames可以獲得本頁面上所有frame集合,用法與document.forms,document.imgs的用法相似,這是這裡用的是window物件,獲取某個框架可以這樣做window.frames[0]、window.frames['framename']、frames['framename']、frames[0]、self.frames[0],此處self與window等價,相當於本頁面的window物件。

這裡也還要再看兩個屬性,contentwindow、contentdocument兩個屬性,也是可以用來獲取子視窗,框架的window物件的。

contentwindow 相容各個瀏覽器,可取得子視窗的 window 物件。

contentdocument firefox 支援,> ie8 的ie支援。可取得子視窗的 document 物件。

假如我要重新整理本頁面中第乙個框架的頁面,可以怎麼做:

window.frames[0].contentwindow.location.reload();
(2)父框架呼叫子框架的變數或函式

結合上面說的獲得頁面上的frame,那麼呼叫子框架的變數或是函式可以這樣來:

frames[0].a;

frames[0].refresh();

alert(frames[0].location.href);

這是呼叫第乙個框架裡面的a變數和refresh函式。

(3)子框架呼叫父框架的變數或函式

對於子框架呼叫父框架的這種情況下,window有個屬性叫parent,用來呼叫上層框架的,所以可以這樣來:

window.parent.a;

window.parent.refresh();

這是呼叫子框架呼叫父框架的a變數和refresh函式。

(4)兄弟框架之間的呼叫

可以通過它們的父框架來相互呼叫,可以這樣做

self.parent.frames['child1'];

self.parent.frames['child2'];

(5)多層框架的呼叫

window.frames[0].frames[2];

window.frames['child_1'].frames['sub_child_3'];

(6)頂層框架

首先需要判斷是否為頂層框架,也就是根,可以這樣來做:

if(self==window.top)

/*window的另外乙個屬性top,它表示對頂層框架的引用,這可以用來判斷乙個框架自身是否為頂層框架*/

(7)獲得頂部的body

如何想要獲得頂層的body元素,那麼可以使用top來獲得。

比如:

var topbody=$(top.document.body)
(8)獲得iframe視窗的外部視窗

如何想要獲得iframe視窗的外部視窗,可以通過:

var iframe= $('iframe的id', parent.document)

frame和iframe的區別

1 frame不能脫離frameset單獨使用,iframe可以 2 frame不能放在body中 如下可以正常顯示 frameset rows 50 frame name frame1 src test1.htm frame name frame2 src test2.htm frameset 如...

frame 與 iframe 及其區別

1.html5 不支援frame。2.iframe 可以單獨在任意位置。3.訪問iframe內物件的方法和普通一樣。iframe內訪問外部時用parent.4.注意target屬性。是根據iframe的name屬性來關聯的。5.iframe的src屬性是要顯示的資源的位址。這樣iframe顯示的就是...

frame與iframe的區別及基本用法

frame 和 iframe 的區別 1 frame 不能脫離 frameset 單獨使用,iframe 可以 2 frame 不能放到body中,否則將無法顯示 3 iframe 也可以巢狀在frameset 但是必須放到body中,不巢狀在frameset 中的iframe 可以隨意使用 4 f...