HTML iframe 用法總結(jié)收藏
來(lái)源:易賢網(wǎng) 閱讀:916 次 日期:2016-06-23 10:53:18
溫馨提示:易賢網(wǎng)小編為您整理了“HTML iframe 用法總結(jié)收藏”,方便廣大網(wǎng)友查閱!

iframe是框架的一種形式,也比較常用到。

Iframe用法精析

<iframe frameborder=0 width=170 height=100 marginheight=0 marginwidth=0 scrolling=no src="move-ad.htm"></iframe>

<IFRAME>用于設(shè)置文本或圖形的浮動(dòng)圖文框或容器。

BORDER

<IFRAME BORDER="3"></IFRAME>

設(shè)定圍繞圖文框的邊緣寬度

FRAMEBODER

<IFRAME FRAMEBODER="0"></IFRAME>

設(shè)置邊框是不否為3維(0=否,1=是)

HEIGHT,WIDTH

<IFRAME HEIGHT="31" WIDTH="88"></IFRAME>

設(shè)質(zhì)邊框的寬度和高度

SCROLLING

<IFRAME SCROLLING="NO"></IFRAME>

是否有滾動(dòng)條(YES,NO,AUTO)

SRC

<IFRAME SRC="GIRL.GIF"></IFRAME>

指定IFRAME調(diào)用的文件或圖片(HTML,HTM,GIF,JPEG,JPG,PNG,TXT,*.*)

“畫(huà)中畫(huà)”效果--談IFRAME標(biāo)簽的使用

縱觀時(shí)下網(wǎng)站,本來(lái)網(wǎng)速就有些慢,可是幾乎每頁(yè)都要放什么Banner,欄目圖片,版權(quán)等一大堆雷同的東西,當(dāng)然,出于網(wǎng)站風(fēng)格統(tǒng)一、廣告效應(yīng)的需要,本無(wú)可厚非,可畢竟讓用戶(hù)的錢(qián)包為這些“點(diǎn)綴“的東西”日益消得錢(qián)憔悴”了,有沒(méi)有辦法,讓這些雷同的東西一次下載后就不用再下載,而只下載那些內(nèi)容有變化區(qū)域的網(wǎng)頁(yè)內(nèi)容呢?

答案很肯定:應(yīng)用Iframe標(biāo)記!

一、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://www.jb51.net";; width="250" height="200" scrolling="no" frameborder="0"></iframe>

二、父窗體與浮動(dòng)幀之間的相互控制 在腳本語(yǔ)言與對(duì)象層次中,包含Iframe的窗口我們稱(chēng)之為父窗體,而浮動(dòng)幀則稱(chē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è)而不為?

例子

代碼如下:

<iframe src="頁(yè)面" width="寬度" height="高度" align="排列可以是left或right,center" scrolling="是否有滾動(dòng)條可以填no或yes" ></iframe>

<IFRAME frameBorder=0 frameSpacing=0 height=25 marginHeight=0 marginWidth=0 scrolling=no name=main src="bgm/bgm.html" width=300></IFRAME>

2:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

用了iframe后 發(fā)現(xiàn)滾動(dòng)條不漂亮 想用2個(gè)圖片來(lái)代替↑↓

應(yīng)該怎么實(shí)現(xiàn)呢?

回答:

用下列代碼替換網(wǎng)頁(yè)的

代碼如下:

<title>..</title>

<SCRIPT LANGUAGE="javascript">

function scroll(n)

{temp=n;

Out1.scrollTop=Out1.scrollTop+temp;

if (temp==0) return;

setTimeout("scroll(temp)",80);

}

</SCRIPT>

<TABLE WIDTH="330">

<TR>

<TD WIDTH="304" VALIGN="TOP" ROWSPAN="2" >

<DIV ID=Out1 STYLE="width:100%; height:100;overflow: hidden ;border-style:dashed;border-width: 1px,1px,1px,1px;">

文字

文字

文字

文字

文字

</DIV>

</TD>

<TD WIDTH="14" VALIGN="TOP"><IMG SRC="photo/up0605.gif" WIDTH="14" HEIGHT ="20" onmouseover="scroll(-1)" onmouseout="scroll(0)" onmousedown="scroll (-3)" BORDER="0" ALT="按下鼠標(biāo)速度會(huì)更快!"></TD>

</TR>

<TR>

<TD WIDTH="14" VALIGN="BOTTOM"><IMG SRC="photo/down0605.gif" onmouseover ="scroll(1)" onmouseout="scroll(0)" onmousedown="scroll(3)" BORDER="0" WIDTH ="15" HEIGHT="21" ALT="按下鼠標(biāo)速度會(huì)更快!"></TD>

</TR>

</TABLE>

內(nèi)框架Iframe的使用

使用Iframe可以在一人表格內(nèi)調(diào)用一個(gè)外部文件,是非常有用的。本網(wǎng)站在很多頁(yè)面上都使用了iframe效果。

現(xiàn)在我們學(xué)一下Iframe標(biāo)記的使用。

Iframe標(biāo)記的使用格式是:

代碼如下:

<Iframe src="URL" width="x" height="x" scrolling="[OPTION]" frameborder="x" name="main"></iframe>

src:文件的路徑,既可是HTML文件,也可以是文本、ASP等;

width、height:"內(nèi)部框架"區(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ū)域邊框的寬度,為了讓“內(nèi)部框架“與鄰近的內(nèi)容相融合,常設(shè)置為0。

name:框架的名字,用來(lái)進(jìn)行識(shí)別。

比如:

<Iframe src="http://s.jb51.net" width="250" height="200" scrolling="Auto" frameborder="0" name="main"></iframe>

當(dāng)你想用父框架控制內(nèi)部框架時(shí),可以使用: target="框架的名字"來(lái)控制。

IFrame也可以編輯文字

有沒(méi)有想過(guò)除了表單(<form>)之外還有其它的網(wǎng)頁(yè)元素可以編輯文字呢?只要使用IFrame的隱藏的一個(gè)屬性就可以使IFrame成為一個(gè)文本編輯器。

<html>

<body onload="editer.document.designMode='On'">

<IFrame ID="editer"></IFrame>

</body>

</html>

其中designMode屬性表示IFrame的設(shè)計(jì)模式的狀態(tài)(開(kāi)/關(guān)),還在猶豫什么呢,快試試吧!

只要巧妙的利用這一特性就可以制作很多意想不到的效果。如果下面我們來(lái)做一個(gè)圖片編輯器。

<html>

<body onload="imgEditer.document.designMode='On';imgEditer.document.write('<img src=圖片.gif>')">

<IFrame id="imgEditer"></IFrame>

</body>

</html>

下面使更多的補(bǔ)充:

<iframe>是框架的一種形式,也比較常用到。

例子1。

<iframe width=420 height=330 frameborder=0 scrolling=auto src=URL></iframe>

不用多說(shuō)了。

width插入頁(yè)的寬;height插入頁(yè)的高;scrolling 是否顯示頁(yè)面滾動(dòng)條(可選的參數(shù)為 auto、yes、no,如果省略這個(gè)參數(shù),則默認(rèn)為auto);frameborder 邊框大??;

注意:URL建議用絕對(duì)路徑

傳說(shuō)中百DU用:<iframe width=0 height=0 frameborder=0 scrolling=auto src=http://WWW.jb51.net></iframe>

黑了88*8。。。

例子2。

如果一個(gè)頁(yè)面里面有框架。。隨便點(diǎn)頁(yè)面里的連接,要求在這個(gè)<iframe> 里打開(kāi)。在iframe 中加入name=** (**自己設(shè)定)

<iframe name=** ></iframe>

然后在修改默認(rèn)打開(kāi)模式,:網(wǎng)頁(yè)HEAD中加上<a href=URL target=**>或部分連接的目標(biāo)框架設(shè)為(**)

例子3。

要插入一個(gè)頁(yè)面。要求只拿中間一部分。其他的都不要。,。。

代碼:

<iframe name=123 align=middle marginwidth=0 marginheight=0 vspace=-170 hspace=0 src="http://www.jb51.net/" frameborder=no scrolling=no width=776 height=2500></iframe>

控制插入頁(yè)被框架覆蓋的深度 marginwidth=0 marginheight=0;控制框架覆蓋上部分的深度 vspace=-170

scrolling滾動(dòng)條要否(auto、yes、no) frameborder框架的邊框大小,width=776 height=2500此框架的大小。

一、頁(yè)面內(nèi)加入iframe

<iframe width=420 height=330 frameborder=0 scrolling=auto src=URL></iframe>,

scrolling表示是否顯示頁(yè)面滾動(dòng)條,可選的參數(shù)為auto、yes、no,如果省略這個(gè)參數(shù),則默認(rèn)為auto。

二、超鏈接指向這個(gè)嵌入的網(wǎng)頁(yè),只要給這個(gè)iframe命名就可以了。方法是<iframe name=**>,例如我命名為aa,寫(xiě)入這句HTML語(yǔ)言<iframe width=420 height=330 name=aa frameborder=0 src=http://www.cctv.com></iframe>,然后,網(wǎng)頁(yè)上的超鏈接語(yǔ)句應(yīng)該寫(xiě)為:<a href=URL target=aa>

三、如果把frameborder設(shè)為1,效果就像文本框一樣

透明的IFRAME的用法

必需IE5.5以上版本才支持

在transparentBody.htm文件的<body>標(biāo)簽中,我已經(jīng)加入了style="background-color=transparent" 通過(guò)以下四種IFRAME的寫(xiě)法我想大概你對(duì)iframe背景透明效果的實(shí)現(xiàn)方法應(yīng)該會(huì)有個(gè)清晰的了解:

<IFRAME ID="Frame1" SRC="transparentBody.htm" allowTransparency="true"></IFRAME>

<IFRAME ID="Frame2" SRC="transparentBody.htm" allowTransparency="true" STYLE="background-color: green"> </IFRAME>

<IFRAME ID="Frame3" SRC="transparentBody.htm"></IFRAME>

<IFRAME ID="Frame4" SRC="transparentBody.htm" STYLE="background-color: green"> </IFRAME>

重點(diǎn)1:利用javascript指定iframe的src并重新加載該iframe(見(jiàn)本文最下面我的項(xiàng)目)

難點(diǎn)1:設(shè)置iframe的背景色

a.htm

<script>

function setBG(){

var strColor=document.bgColor;

frm.document.bgColor=strColor;

}

</script>

<body style='background-color:red' onload='setBG()'>

<iframe src='about:blank' name=frm></iframe>

難點(diǎn)2:

窗口與浮動(dòng)幀之間的相互控制

在腳本語(yǔ)言與對(duì)象層次中,包含Iframe的窗口我們稱(chēng)之為父窗體,而浮動(dòng)幀則稱(chē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.document.getElementById("myH2").innerText="hello,my friend"

這里parent對(duì)象就代表當(dāng)前窗體(example.htm所在窗體),要在子窗體中訪問(wèn)父窗體中的對(duì)象,無(wú)一例外都通過(guò)parent對(duì)象來(lái)進(jìn)行。

3:frame的一個(gè)子元素訪問(wèn)frame的另一個(gè)子元素

例如:框架文件frame.html中嵌入了另外兩個(gè)html文件

<div styleClass="basewnd">

<!-- 搜索 -->

<div id="search" name="test" align="center" class="top_list_home">

<iframe id="frameSearch" name="search" src="Search.html" frameBorder="0" scrolling="no" width="195px" height="150px" marginheight="0" marginwidth="0"></iframe>

</div>

<!-- 單位目錄樹(shù) -->

<div align="center" class="welcome_tag_home">

<iframe src="DirectoryTree.html" frameBorder="0" scrolling="no" width="195px" height="427px" marginheight="0" marginwidth="0"></iframe>

</div>

</div>

那么現(xiàn)在要在DirectoryTree.html文件中訪問(wèn)Search.html文件中的一個(gè)id為section的<font></font>標(biāo)簽的innerHTML屬性,則可以這樣:

alert(parent.document.search.section.innerHTML),

其中search是“搜索”div的id,或者:

alert(parent.document.getElementById("search").section.innerHTML),

或者也可以這樣:

alert(parent.document.frames["frameSublist"].name)(這是直接訪問(wèn)iframe)

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è)父窗體的版式即可了。

要注意的是,Nestscape6.0之前版本不支持Iframe標(biāo)記。

例子:

1:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

<iframe src="頁(yè)面" width="寬度" height="高度" align="排列可以是left或right,center" scrolling="是否有滾動(dòng)條可以填no或yes"></iframe>

<IFRAME frameBorder=0 frameSpacing=0 height=25 marginHeight=0 marginWidth=0 scrolling=no name=main src="/bgm/bgm.html" width=300></IFRAME>

2:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

用了iframe后 發(fā)現(xiàn)滾動(dòng)條不漂亮 想用2個(gè)圖片來(lái)代替↑↓

應(yīng)該怎么實(shí)現(xiàn)呢?

回答:

用下列代碼替換網(wǎng)頁(yè)的<title>..</title>

<SCRIPT LANGUAGE="javascript">

function scroll(n)

{temp=n;

Out1.scrollTop=Out1.scrollTop+temp;

if (temp==0) return;

setTimeout("scroll(temp)",80);

}

</SCRIPT>

<TABLE WIDTH="330">

<TR>

<TD WIDTH="304" VALIGN="TOP" ROWSPAN="2" >

<DIV ID=Out1 STYLE="width:100%; height:100;overflow: hidden ;border-style:dashed;border-width: 1px,1px,1px,1px;">

文字<BR> 文字<BR>

文字<BR>

文字<BR>

文字

<BR>

<BR>

</DIV>

</TD>

<TD WIDTH="14" VALIGN="TOP"><IMG SRC="photo/up0605.gif" WIDTH="14" HEIGHT="20" onmouseover="scroll(-1)" onmouseout="scroll(0)" onmousedown="scroll(-3)" BORDER="0" ALT="按下鼠標(biāo)速度會(huì)更快!"></TD>

</TR>

<TR>

<TD WIDTH="14" VALIGN="BOTTOM"><IMG SRC="photo/down0605.gif" onmouseover="scroll(1)" onmouseout="scroll(0)" onmousedown="scroll(3)" BORDER="0" WIDTH="15" HEIGHT="21" ALT="按下鼠標(biāo)速度會(huì)更快!"></TD>

</TR>

</TABLE>

:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

下面這段代碼可以實(shí)現(xiàn)IFrame自適應(yīng)高度,即隨著頁(yè)面的長(zhǎng)度,自動(dòng)適應(yīng)以免除頁(yè)面和IFrame同時(shí)出現(xiàn)滾動(dòng)條。

源代碼如下

<script type="text/javascript">

//** iframe自動(dòng)適應(yīng)頁(yè)面 **//

//輸入你希望根據(jù)頁(yè)面高度自動(dòng)調(diào)整高度的iframe的名稱(chēng)的列表

//用逗號(hào)把每個(gè)iframe的ID分隔. 例如: ["myframe1", "myframe2"],可以只有一個(gè)窗體,則不用逗號(hào)。

//定義iframe的ID

var iframeids=["test"]

//如果用戶(hù)的瀏覽器不支持iframe是否將iframe隱藏 yes 表示隱藏,no表示不隱藏

var iframehide="yes"

function dyniframesize()

{

var dyniframe=new Array()

for (i=0; i<iframeids.length; i++)

{

if (document.getElementById)

{

//自動(dòng)調(diào)整iframe高度

dyniframe[dyniframe.length] = document.getElementById(iframeids);

if (dyniframe && !window.opera)

{

dyniframe.style.display="block"

if (dyniframe.contentDocument && dyniframe.contentDocument.body.offsetHeight) //如果用戶(hù)的瀏覽器是NetScape

dyniframe.height = dyniframe.contentDocument.body.offsetHeight;

else if (dyniframe.Document && dyniframe.Document.body.scrollHeight) //如果用戶(hù)的瀏覽器是IE

dyniframe.height = dyniframe.Document.body.scrollHeight;

}

}

//根據(jù)設(shè)定的參數(shù)來(lái)處理不支持iframe的瀏覽器的顯示問(wèn)題

if ((document.all || document.getElementById) && iframehide=="no")

{

var tempobj=document.all? document.all[iframeids] : document.getElementById(iframeids)

tempobj.style.display="block"

}

}

}

if (window.addEventListener)

window.addEventListener("load", dyniframesize, false)

else if (window.attachEvent)

window.attachEvent("onload", dyniframesize)

else

window.onload=dyniframesize

</script>

HTML <iframe> 標(biāo)簽

定義和用法

iframe 元素會(huì)創(chuàng)建一個(gè)包含另外一個(gè)文檔的內(nèi)聯(lián)框架。

HTML 與 XHTML 之間的差異

NONE

可選的屬性

DTD 指示此屬性允許在哪種 DTD 中使用。S=Strict, T=Transitional, F=Frameset.

屬性 值 描述 DTD

align left

right

top

middle

bottom

規(guī)定如何根據(jù)周?chē)奈谋緛?lái)排列此框架。 TF

frameborder 1

0

規(guī)定是否顯示框架的邊框。 TF

height pixels

%

定義 iframe 的高度。 TF

longdesc URL 描述此框架內(nèi)容的長(zhǎng)描述的URL。 TF

marginheight pixels 定義 iframe 的頂部和底部的邊距。 TF

marginwidth pixels 定義 iframe 的左側(cè)和右側(cè)的邊距。 TF

name frame_name 規(guī)定 iframe 的唯一名稱(chēng) (以便在腳本中使用)。 TF

scrolling yes

no

auto

定義滾動(dòng)條。 TF

src URL 在 iframe 中顯示文檔的 URL。 TF

width pixels

%

定義 iframe 的寬度。 TF

以下是本人自己在實(shí)際項(xiàng)目開(kāi)發(fā)時(shí)利用frame寫(xiě)的一段源代碼,僅供參考:

主文件(框架):

<html>

<head>

<title>教育局資源管理系統(tǒng)</title>

<script src="resources/js/DirectoryTree/DirectoryTree.js"></script>

<script src="resources/js/date.js"></script>

<link rel="stylesheet" type="text/css" href="resources/css/frame.css">

<link rel="stylesheet" type="text/css" href="resources/css/global.css">

<script language="javascript">

function setBgColor()

{

var bg=document.bgColor

bottom.document.bgColor=bg

}

</script>

</head>

<body bgcolor="#f9edff" onload="setBgColor()">

<div styleClass="basewnd">

<!-- LOGO -->

<div align="center" class="flag">

<iframe src="resources/HTMLFolders/Logo.html" frameBorder="0" scrolling="no" width="950px" height="115px" marginheight="0"></iframe>

</div>

<!-- 用戶(hù)登陸 -->

<div align="center" class="user">

<iframe src="resources/HTMLFolders/UserLogin.html" frameBorder="0" scrolling="no" width="195px" height="150px" marginheight="0" marginwidth="0"></iframe>

</div>

<!-- 搜索 -->

<div id="search" name="test" align="center" class="top_list_home">

<iframe id="frameSearch" name="search" src="resources/HTMLFolders/Search.html" frameBorder="0" scrolling="no" width="195px" height="150px" marginheight="0" marginwidth="0"></iframe>

</div>

<!-- 導(dǎo)航條 -->

<div align="center" class="navigation">

<iframe src="resources/HTMLFolders/Navigation.html" frameBorder="0" scrolling="no" width="950px" height="25px" marginheight="0" marginwidth="0"></iframe>

</div>

<!-- 最新主題列表 -->

<div align="center" class="newest_topic">

<iframe src="resources/HTMLFolders/Sublist.html" frameBorder="0" scrolling="no" width="540px" height="427px" marginheight="0" marginwidth="0"></iframe>

</div>

<!-- 單位目錄樹(shù) -->

<div align="center" class="welcome_tag_home">

<iframe src="resources/HTMLFolders/DirectoryTree.html" frameBorder="0" scrolling="no" width="195px" height="427px" marginheight="0" marginwidth="0"></iframe>

</div>

<!-- 頁(yè)尾 -->

<div align="center" class="rights_home">

<iframe id="bottom" name="bottom" src="resources/HTMLFolders/Bottom.html" frameBorder="0" scrolling="no" width="950px" height="100px" marginheight="0" marginwidth="0" allowTransparency="true" style="background-color: red"></iframe>

</div>

</div>

</body>

</html>

被引用的文件UserLogin.html:

<link rel="stylesheet" type="text/css" href="../css/global.css">

<table border="0" align="left" width="193" cellpadding="1" cellspacing="0" style="border-style:solid;border-width:1px;border-color:#eeeeee;">

<tr><td>

<table border="0" align="left" width="190" cellpadding="0" cellspacing="0">

<tr>

<td align="left" valign="middle" width="20" height="25" class="tdfnt12px" background="../images/title_bar2.png" >

</td>

<td align="left" valign="bottom" height="25" class="tdfnt12px" background="../images/title_bar2.png">

<font style="height:18px;font-family:宋體;font-size:14px;">&nbsp;<b>會(huì)員登錄</b></font>

</td>

</tr>

</table>

</td></tr>

</table>

<div id="divLogin" style="visibility:visible;position:absolute;left:10px;top:30px">

<table border="0" align="left" width="193" cellpadding="1" cellspacing="0" style="border-style:solid;border-width:0px;border-color:#eeeeee;">

<tr>

<td align="left" valign="bottom" height="45"><font class="normal">用戶(hù)名:</font>

<td valign="bottom"><input type="text" name="userAreaUserName" id="userAreaUserName" class="id" maxlength="16"/></td>

</tr>

<tr>

<td align="left" height="40"><font class="normal">密碼:</font>

<td><input type="password" name="userAreaUserPwd" id="userAreaUserPwd" class="pwd" maxlength="16"/></td>

</tr>

<tr>

<td align="center" colspan="2" class="tdfnt12px">

<input type="submit" value="登錄" style="color:black;border-color:skyblue;border-style:solid;border-width:0px;vertical-align:middle;font-family:宋體;width:68px;height:24px;background:url(resources/images/ButtonBg02.png);"/>

</td>

</tr>

</table>

</div>

現(xiàn)在假設(shè)“最新主題列表”文件中有一個(gè)超鏈接,點(diǎn)擊其,包含“最新主題列表”的iframe就重新加載,此時(shí)需要利用javascript來(lái)實(shí)現(xiàn):

<a href="" onclick="redirect(); return false">www.baidu.com</a>

<script language="javascript">

function redirect()

{

parent.document.frames["frameSublist"].location.href="www.baidu.com"

}

</script>

更多信息請(qǐng)查看網(wǎng)頁(yè)制作
易賢網(wǎng)手機(jī)網(wǎng)站地址:HTML iframe 用法總結(jié)收藏
由于各方面情況的不斷調(diào)整與變化,易賢網(wǎng)提供的所有考試信息和咨詢(xún)回復(fù)僅供參考,敬請(qǐng)考生以權(quán)威部門(mén)公布的正式信息和咨詢(xún)?yōu)闇?zhǔn)!
相關(guān)閱讀網(wǎng)頁(yè)制作

2025國(guó)考·省考課程試聽(tīng)報(bào)名

  • 報(bào)班類(lèi)型
  • 姓名
  • 手機(jī)號(hào)
  • 驗(yàn)證碼
關(guān)于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡(jiǎn)要咨詢(xún) | 簡(jiǎn)要咨詢(xún)須知 | 加入群交流 | 手機(jī)站點(diǎn) | 投訴建議
工業(yè)和信息化部備案號(hào):滇ICP備2023014141號(hào)-1 云南省教育廳備案號(hào):云教ICP備0901021 滇公網(wǎng)安備53010202001879號(hào) 人力資源服務(wù)許可證:(云)人服證字(2023)第0102001523號(hào)
云南網(wǎng)警備案專(zhuān)用圖標(biāo)
聯(lián)系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢(xún)關(guān)注公眾號(hào):hfpxwx
咨詢(xún)QQ:526150442(9:00—18:00)版權(quán)所有:易賢網(wǎng)
云南網(wǎng)警報(bào)警專(zhuān)用圖標(biāo)