搜尋
首頁web前端html教學如何在HTML中引入外部頁面(iframe標籤法)

在頁面佈局時,會將部分外部頁面引入到HTML中,這篇文章就和大家講講如何在HTML中引入外部頁面之iframe標籤法。有需要的朋友可以參考一下,希望對你有用。

首先,最容易想到的應該是使用iframe,雖然html5廢除了frame,但是依舊保留了iframe,我們仍可以繼續使用,iframe有一個frameboder屬性,設置屬性值為0或者為no,去除iframe的邊框。然後將scrolling設為no。這是完全可行的,不過記得要在伺服器環境下運作。

 var frame = document.getElementsByTageName("iframe")[0];
    frame.contentWindow.document.XXX方法,
    如frame.contentWindow.document.querySelector("#btn");//获取iframe中Id为btn的节点.123

因為先前沒有使用iframe來引入頭部的經驗,考慮到頭部通常除了跳轉之外,另一個作用應該是定位,在頁面較長時,透過點擊,準確定位到某處。頁面的跳轉,使用iframe引入並無影響,那麼錨點呢?這個需要試試看才知道。 

在此,再補充一點關於錨點的知識: 

錨點可以跳到目前頁面的對應位置,也可以跳到其它頁面的對應位置。 

實作錨點有兩種方式,一種是a標籤 name屬性,還有一種是使用標籤的Id屬性。

具體如下: 

a.使用a標籤name屬性的方式

<a href = "#detail">详情</a> 
<a name = "detail"></a>12

點擊」詳情”,跳到的位置.

b.使用標籤的id屬性

<a href = "#detail">详情</a>
<div id = "detail"></div>12

點擊”詳情”,跳到

的位置.

使用a name的方式經常會出現錨點失效的情況,因此建議使用id來綁定錨點。 

言歸正傳,引入iframe之後,我們能否透過點擊iframe中的元素來定位的對應的位置呢,這裡,我們使用iframe引入head.html,這也是我最初的目的。 

因此我們要實現的是:點選iframe的a標籤,定位到主Html對應的位置,透過實作發現,單純透過html是無法實現的,但是藉助於JS則可以做到。

<!doctype html>
<html>
    <head>
    <!--网站编码格式,UTF-8 国际编码,GBK或 gb2312 中文编码-->
        <meta http-equiv="content-type" content="text/html;charset=utf-8" />
        <meta name="Keywords" content="关键词一,关键词二">
        <meta name="Description" content="网站描述内容">
        <meta name="Author" content="Yvette Lau">
        <title>Document</title>
        <!--css js 文件的引入-->
        <style>
            #leftFrame{display:block;}
        </style>
    </head>
    <body>          
        <div><img  src="/static/imghwm/default1.png"  data-src="test1.html"  class="lazy"  src = "img/photo1.jpg"    style="max-width:90%"/ alt="如何在HTML中引入外部頁面(iframe標籤法)" ></div>      
        <iframe  height= "100px" name="leftFrame" scrolling="No"  noresize="noresize"  id="leftFrame"></iframe>
        <div><img  src = "img/photo2.jpg"     style="max-width:90%"/ alt="如何在HTML中引入外部頁面(iframe標籤法)" ></div>
        <div><img  src = "img/photo3.jpg"    style="max-width:90%" / alt="如何在HTML中引入外部頁面(iframe標籤法)" ></div>
        <p id = "buttom">detail</p>
    </body>
</html>
<script>
    window.onload = function(){
        var iframe = document.querySelector("#leftFrame");
        var bot = iframe.contentWindow.document.querySelector("#bot");
        var top = iframe.contentWindow.document.querySelector("#top");
        bot.onclick = function(){
            document.body.scrollTop = document.body.offsetHeight;
        };
        top.onclick = function(){
            document.body.scrollTop = 0;
        };
    };
</script>

iframe中有id為bot和top的元素。透過JS的方式實現定位。 

在主頁中,透過iframe.contentWindow能夠以HTML物件來返回iframe中的文檔,可以透過所以標準的DOM方法來處理被傳回的物件。

在iframe頁面中,透過parent定位到父html,可以透過top定位到頂層的html. 

同級iframe之間調用,需要先定位到父html,然後再定位到iframe. 

補充點關於錨點的知識,其關鍵作用的就是連接位址後面加的#detail(detail僅是泛指).如果當前的url為localhost:8080/index.html.那麼錨點之後,url應為localhost:8080/index.html#detail 

URL位址末端帶有」#」標識符,表示需要跳到對應的位置。 #idName,瀏覽器會在頁面中找到符合」#idName」特點的標籤。如果URL中”#”後面跟隨的字元在文中找不到,如果是當前頁面,那麼不跳轉,如果是從其它頁面跳轉過來,則顯示頁面頂部。

回到頁面頂部,除了可以透過JS設定body的scrollTop(0回到頂部,設定為body的高度,跳到頂部),另一種方法就是回到頂部

以上是如何在HTML中引入外部頁面(iframe標籤法)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
HTML超文本标记语言--超在那里?(文档分析)HTML超文本标记语言--超在那里?(文档分析)Aug 02, 2022 pm 06:04 PM

本篇文章带大家了解一下HTML(超文本标记语言),介绍一下HTML的本质,HTML文档的结构、HTML文档的基本标签和图像标签、列表、表格标签、媒体元素、表单,希望对大家有所帮助!

html和css算编程语言吗html和css算编程语言吗Sep 21, 2022 pm 04:09 PM

不算。html是一种用来告知浏览器如何组织页面的标记语言,而CSS是一种用来表现HTML或XML等文件样式的样式设计语言;html和css不具备很强的逻辑性和流程控制功能,缺乏灵活性,且html和css不能按照人类的设计对一件工作进行重复的循环,直至得到让人类满意的答案。

web前端笔试题库之HTML篇web前端笔试题库之HTML篇Apr 21, 2022 am 11:56 AM

总结了一些web前端面试(笔试)题分享给大家,本篇文章就先给大家分享HTML部分的笔试题(附答案),大家可以自己做做,看看能答对几个!

HTML5中画布标签是什么HTML5中画布标签是什么May 18, 2022 pm 04:55 PM

HTML5中画布标签是“<canvas>”。canvas标签用于图形的绘制,它只是一个矩形的图形容器,绘制图形必须通过脚本(通常是JavaScript)来完成;开发者可利用多种js方法来在canvas中绘制路径、盒、圆、字符以及添加图像等。

总结HTML中a标签的使用方法及跳转方式总结HTML中a标签的使用方法及跳转方式Aug 05, 2022 am 09:18 AM

本文给大家总结介绍a标签使用方法和跳转方式,希望对大家有所帮助!

html5废弃了哪个列表标签html5废弃了哪个列表标签Jun 01, 2022 pm 06:32 PM

html5废弃了dir列表标签。dir标签被用来定义目录列表,一般和li标签配合使用,在dir标签对中通过li标签来设置列表项,语法“<dir><li>列表项值</li>...</dir>”。HTML5已经不支持dir,可使用ul标签取代。

html中document是什么html中document是什么Jun 17, 2022 pm 04:18 PM

在html中,document是文档对象的意思,代表浏览器窗口的文档;document对象是window对象的子对象,所以可通过“window.document”属性对其进行访问,每个载入浏览器的HTML文档都会成为Document对象。

html5支持boolean值属性吗html5支持boolean值属性吗Apr 22, 2022 pm 04:56 PM

html5支持boolean值属性;boolean值属性指是属性值为true或者false的属性,如input元素中的disabled属性,不使用该属性表示值为flase,不禁用元素,使用该属性可以不设置属性值表示值为true,禁用元素。

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
2 週前By尊渡假赌尊渡假赌尊渡假赌
倉庫:如何復興隊友
4 週前By尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
4 週前By尊渡假赌尊渡假赌尊渡假赌

熱工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

mPDF

mPDF

mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

EditPlus 中文破解版

EditPlus 中文破解版

體積小,語法高亮,不支援程式碼提示功能

VSCode Windows 64位元 下載

VSCode Windows 64位元 下載

微軟推出的免費、功能強大的一款IDE編輯器