DOM,瀏覽器,javascript,html之間的關系


來源於:https://github.com/hucheng91/myBlog/blob/master/web/dom/dom.md

 

  DOM定義

DOM可以以一種獨立於平台和語言的方式訪問和修改一個文檔的內容和結構。換句話說,這是表示和處理一個HTML或XML文檔的常用方法。有一點很重要,DOM的設計是以對象管理組織(OMG)的規約為基礎的,因此可以用於任何編程語言。最初人們把它認為是一種讓JavaScript在瀏覽器間可移植的方法,不過DOM的應用已經遠遠超出這個范圍。Dom技術使得用戶頁面可以動態地變化,如可以動態地顯示或隱藏一個元素,改變它們的屬性,增加一個元素等,Dom技術使得頁面的交互性大大地增強。 DOM實際上是以面向對象方式描述的文檔模型。DOM定義了表示和修改文檔所需的對象、這些對象的行為和屬性以及這些對象之間的關系。可以把DOM認為是頁面上數據和結構的一個樹形表示,不過頁面當然可能並不是以這種樹的方式具體實現。 DOM是W3C(萬維網聯盟)的標准。DOM定義了訪問HTML和XML文檔的准W3C文檔對象模型(DOM)是中立於平台和語言的接口,它允許程序和腳本動態地訪問和更新文檔的內容、結構和樣式。 W3C DOM 標准被分為3個不同的部分:

  1. 核心DOM-針對任何結構化文檔的標准模型
  2. XML DOM-針對XML文檔的標准模型
  3. HTML DOM-針對HTML文檔的標准模型

DOM發展背景

DOM的歷史可以追溯至1990年代后期微軟與Netscape的“瀏覽器大戰”,雙方為在JavaScript與JScript一決生死,於是大規模的賦予瀏覽器強大的功能。微軟在網頁技術上加入了不少專屬事物,計有VBScript、ActiveX、以及微軟自家的DHTML格式等,使不少網頁使用非微軟平台及瀏覽器無法正常顯示。這個時候萬維網聯盟出來了,說我來制定一個統一的標准,你們瀏覽器按照這個標准來,這個一個頁面在不同的瀏覽器就都能正常顯示了,比方說W3C定義了 這個標識符是存放圖片的,chrome,ie,火狐..等等瀏覽器內核就將定義成顯示圖片,要是沒有W3C制定標准,每個瀏覽器對圖片定義不同的標簽,那針對每個瀏覽器要寫不同的代碼,這個肯定是行不通的;

DOM基本定義

DOM最開始只定義了一級 主要包含 DOM Core,DOM HTML;這一級就主要搞定了各個瀏覽器顯示統一問題,接着發展了二級,三級;之所以出現我們寫的代碼在這個瀏覽器可用,再那個瀏覽器不用,歸根結底是瀏覽器對dom的支持不一樣,解釋不一樣,雖然你定了統一標准,可人家不一定非要按你這個來

image

DOM和瀏覽器之間關系,為什么要用DOM

瀏覽器將DOM翻譯成html image imageimage image

DOM和HTML之間關系

瀏覽器拿到DOM這顆樹,將其渲染成html,加上各種漂亮的css,由於各種瀏覽器渲染過程不一樣,所以寫的有些樣式這個瀏覽器是可以用的,有些瀏覽器是不同的

DOM和javascript之間關系

javascript是操作dom,處理完dom,瀏覽器接着渲染,這樣就有了頁面的變化,

DOM,瀏覽器,HTML,javasript,css之間的關系可以理解成;一個畫家(程序員)用畫筆(javascript)畫了個畫(DOM),接着打印機(瀏覽器)打印,在打印過程中加上彩墨(css),最終一張漂亮好看的一張紙(html)就展示在大家面前

 

https://www.w3.org/TR/2015/REC-dom-20151119/


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM