欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

JavaScript中DOM和BOM有什么用-創(chuàng)新互聯(lián)

這篇文章主要介紹JavaScript中DOM和BOM有什么用,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!

專(zhuān)業(yè)成都網(wǎng)站建設(shè)公司,做排名好的好網(wǎng)站,排在同行前面,為您帶來(lái)客戶(hù)和效益!創(chuàng)新互聯(lián)為您提供成都網(wǎng)站建設(shè),五站合一網(wǎng)站設(shè)計(jì)制作,服務(wù)好的網(wǎng)站設(shè)計(jì)公司,成都網(wǎng)站設(shè)計(jì)、成都做網(wǎng)站負(fù)責(zé)任的成都網(wǎng)站制作公司!

文檔對(duì)象模型(DOM)

面試官很喜歡問(wèn)的:“你知道什么是文檔對(duì)象模型嗎?”,那今天我們一個(gè)個(gè)來(lái)解釋一下吧:

DOM:Document Object Model(文檔對(duì)象模型)

Document

中文翻譯:文檔,這里的文檔指的是XML和HTML的頁(yè)面,當(dāng)你創(chuàng)建一個(gè)頁(yè)面并且加載到Web瀏覽器中,DOM就在幕后悄然而生,它會(huì)把你編寫(xiě)的網(wǎng)頁(yè)文檔轉(zhuǎn)換成一個(gè)文檔對(duì)象。

Object

中文翻譯:對(duì)象,學(xué)習(xí)js的同學(xué)一定對(duì)“一切皆對(duì)象”這句話(huà)不會(huì)陌生;

在JavaScript語(yǔ)言的類(lèi)型大致可以分為以下三種:

  • 用戶(hù)定義對(duì)象
    自行創(chuàng)建的對(duì)象,例如:

    var obj = {}
  • 內(nèi)置對(duì)象
     內(nèi)置在JavaScript中的對(duì)象,無(wú)需我們創(chuàng)建,可以直接使用,例如:Array、Math和Data等

  • 宿主對(duì)象
     上期我們知道了什么是宿主環(huán)境以后,應(yīng)該對(duì)宿主對(duì)象是什么有了一定的了解,在這里我們指的是瀏覽器提供的對(duì)象,例如:window、document。

DOM中主要關(guān)注的就是document,document對(duì)象的主要功能就是處理網(wǎng)頁(yè)內(nèi)容。

Model

中文翻譯:模型,如果你把這個(gè)詞從DOM中抽離出來(lái),看下面的圖片~是不是就很好理解。

打個(gè)比方,如圖:是一套小區(qū)建筑模型,基本上任何售樓處都會(huì)有它的身影,買(mǎi)房的人只需要根據(jù)這套模型就可以了解建設(shè)完成后的小區(qū)長(zhǎng)什么樣子,有哪些公共設(shè)施,植被面積又有多少………

而DOM也像一個(gè)這樣的模型,但它代表著加載到瀏覽器窗口的當(dāng)前網(wǎng)頁(yè),我們可以利用JavaScript對(duì)它進(jìn)行讀取。

有了模型之后,我們同樣需要能看懂模型(可以理解為我需要知道這個(gè)模型是干什么用的);

如果沒(méi)有看懂模型,那就像跟一個(gè)盲人說(shuō),太陽(yáng)是會(huì)發(fā)光發(fā)熱的,對(duì)于盲人來(lái)說(shuō),他是沒(méi)有這個(gè)概念的,因?yàn)樗床坏教?yáng);

所以,雖然我們可以通過(guò)JavaScript對(duì)DOM進(jìn)行讀取,但是我們要必須先能看懂模型。

DOM把一份文檔表示為一顆樹(shù),有一個(gè)主干支以及無(wú)數(shù)的分干支,其實(shí)我個(gè)人覺(jué)得,更像是族譜。因?yàn)樵诿枋鰳?biāo)簽之間關(guān)系的時(shí)候,我們經(jīng)常用“父級(jí)”、“子級(jí)”、“兄弟”這樣的詞來(lái)表明并列標(biāo)簽和嵌套標(biāo)簽。

例如以下圖片:

JavaScript中DOM和BOM有什么用

具體代碼如下:

<!DOCTYPE html> <html>
<head>
<meta charset="UTF-8">

<title>Document</title>
</head>
<body>
<h2>Hello World!</h2>

<p>歡迎觀(guān)看本次文章,包含以下內(nèi)容:</p>

<ul>

    <li>ECMAScript</li>

    <li>DOM</li>

    <li>BOM</li>

</ul>
</body>
</html>

我們把上面的結(jié)構(gòu)抽象成DOM樹(shù):

JavaScript中DOM和BOM有什么用

從上面的圖,我們可以清晰的看到根元素是html,下面有兩個(gè)子元素,一個(gè)是head,另一個(gè)是body,而head和body之間是兄弟關(guān)系,以此類(lèi)推,用這樣的方式我們可以把頁(yè)面中的所有元素都用模型抽象成一棵樹(shù)。

所以,DOM簡(jiǎn)單來(lái)說(shuō)就是:一套對(duì)文檔的內(nèi)容進(jìn)行抽象和概念化的方法,提供訪(fǎng)問(wèn)和操作網(wǎng)頁(yè)內(nèi)容的方法和接口。

DOM的級(jí)別

不要以為只有ECMAScript有版本哦,DOM也是有不一樣級(jí)別的。

W3C官方網(wǎng)址:

https://www.w3.org/standards/...

DOM分為以下:

  • DOM0:沒(méi)有納入標(biāo)準(zhǔn),屬于初級(jí)試驗(yàn)性質(zhì)的,主要用途翻轉(zhuǎn)圖片、驗(yàn)證表單數(shù)據(jù)。

  • DOM1:1998年10月制定的標(biāo)準(zhǔn),由兩大部分組成:DOM核心和DOM HTML。

  • DOM2:擴(kuò)展鼠標(biāo)和用戶(hù)界面事件、范圍、遍歷,增加了對(duì) CSS支持。

  • DOM3:進(jìn)一步擴(kuò)展了DOM,新增了驗(yàn)證文檔的方法,支持XML 1.0 規(guī)范。

Web 瀏覽器對(duì) DOM 的支持

既然有級(jí)別,那么無(wú)可避免就要面對(duì)兼容問(wèn)題,我們來(lái)看一下各個(gè)版本瀏覽器支持情況:

JavaScript中DOM和BOM有什么用

圖片來(lái)自《JavaScript高級(jí)程序設(shè)計(jì)》

其實(shí)DOM 并不只是針對(duì) JavaScript 的,很多別的語(yǔ)言也都實(shí)現(xiàn)了 DOM哦

瀏覽器對(duì)象模型(BOM)

BOM:Browser Object Model (瀏覽器對(duì)象模型)

提供與瀏覽器交互的方法和接口。

理解了DOM以后再來(lái)看BOM,就不需要這么細(xì)致的講解啦。開(kāi)發(fā)人員使用 BOM 可以控制瀏覽器顯示的頁(yè)面以外的部分,例如:獲取當(dāng)前瀏覽器版本這樣的操作。

從根本上講,BOM 只處理瀏覽器窗口和框架;但人們習(xí)慣上也把所有針對(duì)瀏覽器的 JavaScript 擴(kuò)展算作 BOM 的一部分。下面就是一些這樣的擴(kuò)展:

  • 彈出新瀏覽器窗口的功能

  • 移動(dòng)、縮放和關(guān)閉瀏覽器窗口的功能

  • 提供瀏覽器詳細(xì)信息的 navigator 對(duì)象

  • 提供瀏覽器所加載頁(yè)面的詳細(xì)信息的 location 對(duì)象

  • 提供用戶(hù)顯示器分辨率詳細(xì)信息的 screen 對(duì)象

  • 對(duì) cookies 的支持

  • 像 XMLHttpRequest 和 IE 的 ActiveXObject 這樣的自定義對(duì)象

BOM是沒(méi)有標(biāo)準(zhǔn)的,因此每個(gè)瀏覽器都有自己的實(shí)現(xiàn)。

但是又因?yàn)楦鞔鬄g覽器之間都有共同對(duì)象,于是這些對(duì)象就成了事實(shí)上的標(biāo)準(zhǔn)。

W3C把瀏覽器中 JavaScript 最基本的部分標(biāo)準(zhǔn)化,已經(jīng)將 BOM 的主要方面納入了 HTML5 的規(guī)范中。

以上是“JavaScript中DOM和BOM有什么用”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線(xiàn),公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性?xún)r(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專(zhuān)為企業(yè)上云打造定制,能夠滿(mǎn)足用戶(hù)豐富、多元化的應(yīng)用場(chǎng)景需求。

網(wǎng)頁(yè)標(biāo)題:JavaScript中DOM和BOM有什么用-創(chuàng)新互聯(lián)
當(dāng)前網(wǎng)址:http://www.chinadenli.net/article28/icdjp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供云服務(wù)器定制開(kāi)發(fā)網(wǎng)站維護(hù)品牌網(wǎng)站設(shè)計(jì)網(wǎng)站收錄網(wǎng)頁(yè)設(shè)計(jì)公司

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)公司