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

            一、Iframe標(biāo)記的使用

            提起Iframe,可能你早已將之扔到'被遺忘的角落”了,不過,說起其兄弟Frame就不會(huì)陌生了。Frame標(biāo)記即幀標(biāo)記,我們所說的多幀
          結(jié)構(gòu)就是在一個(gè)瀏覽器窗口中顯示多個(gè)HTML文件。現(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ù)寫內(nèi)容,一個(gè)形象的比喻即'畫中畫'電視。

            現(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:"畫中畫"區(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)容相融合,常設(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
          中訪問子窗體或相反都必須清楚對(duì)象層次,才能通過程序來訪問并控制窗體。

            1、在父窗體中訪問并控制子窗體中的對(duì)象

            在父窗體中,Iframe即子窗體是document對(duì)象的一個(gè)子對(duì)象,可以直接在腳本中訪問子窗體中的對(duì)象。

            現(xiàn)在就有一個(gè)問題,即,我們?cè)鯓觼砜刂七@個(gè)Iframe,這里需要講一下Iframe對(duì)象。當(dāng)我們給這個(gè)標(biāo)記設(shè)置了ID 屬性后,就可通過文檔
          對(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ì)象訪問控制方式一樣,就不再贅述。

            2、在子窗體中訪問并控制父窗體中對(duì)象

            在子窗體中我們可以通過其parent即父(雙親)對(duì)象來訪問父窗口中的對(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中訪問ID號(hào)為myH2中的標(biāo)題文字并將之改為"hello,my friend",我們就可以這樣寫:
            parent.myH2.innerText="hello,my friend"
            這里parent對(duì)象就代表當(dāng)前窗體(example.htm所在窗體),要在子窗體中訪問父窗體中的對(duì)象,無(wú)一例外都通過parent對(duì)象來進(jìn)行。

            Iframe雖然內(nèi)嵌在另一個(gè)HTML文件中,但它保持相對(duì)的獨(dú)立,是一個(gè)'獨(dú)立王國(guó)'喲,在單一HTML中的特性同樣適用于浮動(dòng)幀中。

            試想一下,通過Iframe標(biāo)記,我們可將那些不變的內(nèi)容以Iframe來表示,這樣,不必重復(fù)寫相同的內(nèi)容,這有點(diǎn)象程序設(shè)計(jì)中的過程或
          函數(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)記,既為自己

          ????三、IFrame也可以編輯文字

          ????有沒有想過除了表單(<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)(開/關(guān)),還在猶豫什么呢,快試試吧!
          只要巧妙的利用這一特性就可以制作很多意想不到的效果。如果下面我們來做一個(gè)圖片編輯器。
          <html>
          <body onload="imgEditer.document.designMode='On';imgEditer.document.write('<img src=圖片.gif>')">
          <IFrame id="imgEditer"></IFrame>
          </body>
          </html>

          posted on 2006-04-25 17:42 herry 閱讀(292) 評(píng)論(0)  編輯  收藏 所屬分類: HTML

          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
          博客園   IT新聞   Chat2DB   C++博客   博問  
           
          <2025年6月>
          25262728293031
          1234567
          891011121314
          15161718192021
          22232425262728
          293012345

          有空多聯(lián)系~

          常用鏈接

          留言簿(3)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          收藏夾

          java

          搜索

          •  

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          主站蜘蛛池模板: 门源| 仁怀市| 舟山市| 图木舒克市| 福建省| 南投市| 西乌| 祁门县| 广安市| 秦安县| 南川市| 新乡县| 永川市| 滕州市| 马关县| 马龙县| 竹北市| 平利县| 定兴县| 逊克县| 卢龙县| 广东省| 尚志市| 合作市| 陕西省| 崇阳县| 江都市| 乌兰察布市| 太康县| 黑龙江省| 定兴县| 沙雅县| 江都市| 商洛市| 杭锦后旗| 百色市| 宜兰县| 司法| 彰武县| 梁山县| 泗水县|