佳木斯湛栽影视文化发展公司

主頁(yè) > 知識(shí)庫(kù) > Iframe和FRAME的區(qū)別分析

Iframe和FRAME的區(qū)別分析

熱門(mén)標(biāo)簽:阿里云 檢查注冊(cè)表項(xiàng) 使用U盤(pán)裝系統(tǒng) 硅谷的囚徒呼叫中心 美圖手機(jī) 智能手機(jī) 網(wǎng)站建設(shè) 百度競(jìng)價(jià)點(diǎn)擊價(jià)格的計(jì)算公式
一、Iframe標(biāo)記的使用
提起Iframe,可能你早已將之扔到“被遺忘的角落”了,不過(guò),說(shuō)起其兄弟Frame就不會(huì)陌生了。Frame標(biāo)記即幀標(biāo)記,我們所說(shuō)的多幀結(jié)構(gòu)就是在一個(gè)瀏覽器窗口中顯示多個(gè)HTML文件?,F(xiàn)在,我們遇到一種很現(xiàn)實(shí)的情況:如有一個(gè)教程,是一節(jié)一節(jié)地上,每頁(yè)末尾做一個(gè)“上一節(jié)“、“下一節(jié)“的鏈接,除了每節(jié)教程內(nèi)容不同之外,頁(yè)面其它部分內(nèi)容都是相同的,如果一頁(yè)一頁(yè)地做笨頁(yè)面,這似乎太讓人厭煩了,這時(shí)突發(fā)奇想,如果有一種方法讓頁(yè)面其它地方不變,只將教程做成一頁(yè)一頁(yè)的內(nèi)容頁(yè),不含其它內(nèi)容,在點(diǎn)擊上下翻頁(yè)鏈接時(shí),只改變教程內(nèi)容部分,其它保持不變,這樣,一是省時(shí),另則以后如教程有個(gè)三長(zhǎng)兩短的變動(dòng),也很方便,不致于牽一發(fā)而動(dòng)全軍了;更重要的是將那些廣告Banner、欄目列表、導(dǎo)航等幾乎每頁(yè)的都有的東西只下載一次后就不再下載了。
Iframe標(biāo)記,又叫浮動(dòng)幀標(biāo)記,你可以用它將一個(gè)HTML文檔嵌入在一個(gè)HTML中顯示。它不同于Frame標(biāo)記最大的特征即這個(gè)標(biāo)記所引用的HTML文件不是與另外的HTML文件相互獨(dú)立顯示,而是可以直接嵌入在一個(gè)HTML文件中,與這個(gè)HTML文件內(nèi)容相互融合,成為一個(gè)整體,另外,還可以多次在一個(gè)頁(yè)面內(nèi)顯示同一內(nèi)容,而不必重復(fù)寫(xiě)內(nèi)容,一個(gè)形象的比喻即“畫(huà)中畫(huà)“電視。
現(xiàn)在我們談一下Iframe標(biāo)記的使用。
Iframe標(biāo)記的使用格式是:
<Iframe src="URL" width="x" height="x" scrolling="[OPTION]" frameborder="x"></iframe>
src:文件的路徑,既可是HTML文件,也可以是文本、ASP等;
width、height:"畫(huà)中畫(huà)"區(qū)域的寬與高;
scrolling:當(dāng)SRC的指定的HTML文件在指定的區(qū)域不顯不完時(shí),滾動(dòng)選項(xiàng),如果設(shè)置為NO,則不出現(xiàn)滾動(dòng)條;如為Auto:則自動(dòng)出現(xiàn)滾動(dòng)條;如為Yes,則顯示;
FrameBorder:區(qū)域邊框的寬度,為了讓“畫(huà)中畫(huà)“與鄰近的內(nèi)容相融合,常設(shè)置為0。
比如:
<Iframe src="http://netschool.cpcw.com/homepage" width="250" height="200" scrolling="no" frameborder="0"></iframe>
二、父窗體與浮動(dòng)幀之間的相互控制
在腳本語(yǔ)言與對(duì)象層次中,包含Iframe的窗口我們稱之為父窗體,而浮動(dòng)幀則稱為子窗體,弄清這兩者的關(guān)系很重要,因?yàn)橐诟复绑w中訪問(wèn)子窗體或相反都必須清楚對(duì)象層次,才能通過(guò)程序來(lái)訪問(wèn)并控制窗體。
1、在父窗體中訪問(wèn)并控制子窗體中的對(duì)象
在父窗體中,Iframe即子窗體是document對(duì)象的一個(gè)子對(duì)象,可以直接在腳本中訪問(wèn)子窗體中的對(duì)象。
現(xiàn)在就有一個(gè)問(wèn)題,即,我們?cè)鯓觼?lái)控制這個(gè)Iframe,這里需要講一下Iframe對(duì)象。當(dāng)我們給這個(gè)標(biāo)記設(shè)置了ID 屬性后,就可通過(guò)文檔對(duì)象模型DOM對(duì)Iframe所含的HTML進(jìn)行一系列控制。
比如在example.htm里嵌入test.htm文件,并控制test.htm里一些標(biāo)記對(duì)象:
<Iframe src="test.htm" id="test" width="250" height="200" scrolling="no" frameborder="0"></iframe>
test.htm文件代碼為:
<html>
<body>
<h1 id="myH1">hello,my boy</h1>
</body>
</html>
如我們要改變ID號(hào)為myH1的H1標(biāo)記里的文字為hello,my dear,則可用:
document.myH1.innerText="hello,my dear"(其中,document可省)
在example.htm文件中,Iframe標(biāo)記對(duì)象所指的子窗體與一般的DHTML對(duì)象模型一致,對(duì)對(duì)象訪問(wèn)控制方式一樣,就不再贅述。
2、在子窗體中訪問(wèn)并控制父窗體中對(duì)象
在子窗體中我們可以通過(guò)其parent即父(雙親)對(duì)象來(lái)訪問(wèn)父窗口中的對(duì)象。
如example.htm:
<html>
<body onclick="alert(tt.myH1.innerHTML)">
<Iframe name="tt" src="frame1.htm" width="250" height="200" scrolling="no" frameborder="0"></iframe>
<h1 id="myH2">hello,my wife</h1>
</body>
</html>
如果要在frame1.htm中訪問(wèn)ID號(hào)為myH2中的標(biāo)題文字并將之改為"hello,my friend",我們就可以這樣寫(xiě):
parent.myH2.innerText="hello,my friend"
這里parent對(duì)象就代表當(dāng)前窗體(example.htm所在窗體),要在子窗體中訪問(wèn)父窗體中的對(duì)象,無(wú)一例外都通過(guò)parent對(duì)象來(lái)進(jìn)行。
Iframe雖然內(nèi)嵌在另一個(gè)HTML文件中,但它保持相對(duì)的獨(dú)立,是一個(gè)“獨(dú)立王國(guó)“喲,在單一HTML中的特性同樣適用于浮動(dòng)幀中。
試想一下,通過(guò)Iframe標(biāo)記,我們可將那些不變的內(nèi)容以Iframe來(lái)表示,這樣,不必重復(fù)寫(xiě)相同的內(nèi)容,這有點(diǎn)象程序設(shè)計(jì)中的過(guò)程或函數(shù),減省了多少繁瑣的手工勞動(dòng)!另外,至關(guān)重要的是,它使頁(yè)面的修改更為可行,因?yàn)?,不必因?yàn)榘媸降恼{(diào)整而修改每個(gè)頁(yè)面,你只需修改一個(gè)父窗體的版式即可了。
有一點(diǎn)要注意,Nestscape瀏覽器不支持Iframe標(biāo)記,但在時(shí)下IE的天下,這似乎也無(wú)大礙,廣泛采用Iframe標(biāo)記,既為自己(網(wǎng)站)著了想,又為網(wǎng)友節(jié)省了網(wǎng)費(fèi),何樂(lè)而不為?
浮動(dòng)FRAME是HTML4.0規(guī)范中的一個(gè)定義,目前的瀏覽器都支持它。
不象FRAMESET表示的分割區(qū)樣子,一個(gè)浮動(dòng)FRAME作為一個(gè)內(nèi)置對(duì)象存在于Web頁(yè)面上,其樣式就象一個(gè)頁(yè)面上的一個(gè)圖形或者一個(gè)applet。浮動(dòng)FRAME使用<IFRAME>標(biāo)記,它具有與<FRAME>相同的大多數(shù)屬性設(shè)置,包括:name、src、marginwidth、marginheight、FRAMEborder以及scrolling。同時(shí),它還具有與圖形或者applet一樣的height、width和align屬性。
而且,浮動(dòng)FRAME遵循與普通FRAME一樣的target原則:我們可以通過(guò)它的name來(lái)指向它。本原則適用于在任一類型FRAME中的浮動(dòng)FRAME,反之易然。浮動(dòng)FRAME中的沒(méi)有traget的鏈接指向它本身,而_parent鏈接則指向包含<IFRAME>的文檔所在的FRAME或者窗口。比如:
<IFRAME name="floater" src="start.htm" width=150 height=200 hspace=10 align=left>
<IMG src="Images/noFRAME.gif" alt="You can't see the floating FRAME"
width=150 height=200 hspace=10 align=right>
</IFRAME><BR>
<A href="one.htm" target="floater">Show one.htm</A><P>
<A href="two.htm" target="floater">Show two.htm</A><P>
<A href="start.htm" target="floater">Bring back start.htm</A>
注意,對(duì)應(yīng)支持<IFRAME>標(biāo)記的瀏覽器,任何位于<IFRAME>和</IFRAME>間的內(nèi)容都將忽略。反之,其中的內(nèi)容將顯示出來(lái),這可以用作解釋當(dāng)前瀏覽器不支持<IFRAME>

標(biāo)簽:山南 黃山 通遼 煙臺(tái) 懷化 湖北 湘潭 賀州

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Iframe和FRAME的區(qū)別分析》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    靖宇县| 平塘县| 务川| 濮阳市| 环江| 锡林浩特市| 长宁县| 清水河县| 香河县| 镇原县| 梨树县| 德化县| 九龙城区| 汉沽区| 黄梅县| 阳西县| 海盐县| 杭州市| 辽阳县| 稻城县| 衡南县| 得荣县| 巴东县| 静宁县| 大余县| 林口县| 富民县| 临洮县| 邛崃市| 肥乡县| 林州市| 海口市| 彰化县| 临夏县| 兴海县| 棋牌| 陵川县| 新巴尔虎左旗| 汤原县| 海口市| 罗田县|