<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                [TOC] ## JavaScript 和 DOM 的產生與發展 JavaScript歷經了從被人誤解到現在的被萬眾矚目的轉變。隨著一些JavaScript編程規范的推出(如:AMD、CMD),其應用范圍也從前端一些小功能逐漸擴展到后端和一些大項目中。那么,JavaScript從混亂無序到嚴謹規范經歷的哪些過程,在這些過程中又JavaScript增加了哪些功能特性? ### 1. JavaScript的起源 #### 1.1 JavaScript的誕生與發展 JavaScript最初由Netscape的Brendan Eich設計, Netscape在最初將其腳本語言命名為LiveScript,后來Netscape在與Sun合作之后將其改名為JavaScript。由此看來,JavaScript只是出于營銷考慮,看起來像Java實則與Java沒有一點關系。 在JavaScript出現之前,Web瀏覽器僅是一種能夠顯示超文本文檔的軟件;在JavaScript出現之后,網頁的交互性得到明顯改善,其內容也不再局限于簡單的文本。JavaScript第一個版本,即:JavaScript 1.0,在1995年Netscape Navigator 2瀏覽器中推出。 在JavaScript 1.0發布時,Netscape Navigator瀏覽器還占主宰地位。Microsoft在IE 3.0時發布了VBScript命名為JScript。面對微軟的競爭,Netscape在與Sun聯合ECMA(歐洲計算機制造協會)對JavaScript語言進行了標準化,即:ECMA-262(ECMAScript),也就是我們今天的使用JavaScript語言標準,目前最新標準為ECMAScript 6。 1.2 JavaScript的設計功能 JavaScript最初設計是作為給非程序人員的腳本語言,JavaScript做為一種解釋型腳本語言,通常只能依賴Web瀏覽器去完成一些操作而不能像動態語言那樣獨立運行。也正是由于JavaScript的簡單性,使其比較容易的學習和使用。 JavaScript向用戶提供了一些操控Web瀏覽器和Web文檔的API,即:BOM(瀏覽器對象模型)和DOM(文檔對象模型)。你可以通過JavaScript調整瀏覽的寬、高、位置等,同樣你可通過JavaScript調整Web頁面內容的顯示、隱藏、表單提交等。 ### 2. DOM的誕生與發展 #### 2.1 DOM是什么 DOM,文檔對象模型(Document Object Model)。DOM是 W3C(萬維網聯盟)的標準,DOM定義了訪問HTML和XML文檔的標準。在W3C的標準中,DOM是獨于平臺和語言的接口,它允許程序和腳本動態地訪問和更新文檔的內容、結構和樣式。 W3C DOM由以下三部分組成: * 核心DOM - 針對任何結構化文檔的標準模型 * XML DOM - 針對 XML 文檔的標準模型 * HTML DOM - 針對 HTML 文檔的標準模型 #### 2.2 DOM的發展-DOM0、DOM1、DOM2、DOM3的區別 #### DOM0 JavaScript在早期版本中提供了查詢和操作Web文檔的內容API(如:圖像和表單),在JavaScript中定義了定義了'images'、'forms'等,因此我們可以像下這樣訪問第一張圖片或名為“user”的表單: ~~~ document.images[0] document.forms['user'] ~~~ 這實際上是未形成標準的試驗性質的初級階段的DOM,現在習慣上被稱為DOM0,即:第0級DOM。由于DOM0在W3C進行標準備化之前出現,還處于未形成標準的初期階段,這時Netscape和Microsoft各自推出自己的第四代瀏覽器,自此DOM遍開始出各種問題。 #### DOM0與DHTML Netscape Navigator 4和IE4分別發布于1997年的6月和10月,這兩種瀏覽器都大幅擴展了DOM,使JavaScript的功能大大增加,而此時也開始出現一個新名詞:DHTML。 DHTML是Dynamic HTML(動態HTML)的簡稱。DHTML并不是一項新技術,而是將HTML、CSS、JavaScript技術組合的一種描述。即: * 利用HTML把網頁標記為各種元素 * 利用CSS設置元素樣式及其顯示位置 * 利用JavaScript操控頁面元素和樣式 利用DHTML,看起來可以很容易的控制頁面元素,并實現一此原本很復雜的效果(如:通過改變元素位置實現動畫)。但事實并非如此,因為沒有規范和標準,兩種瀏覽器對相同功能的實現確完全不一樣。為了保持程序的兼容性,程序員必須寫一些探查代碼以檢測JavaScript是運行于哪種瀏覽器之下,并提供與之對應的腳本。JavaScript陷入了前所未有的混亂,DHTML也因此在人們心中留下了很差的印象。 #### DOM1的出現 在瀏覽器廠商進行瀏覽器大站的同時,W3C結合大家的優點推出了一個標準化的DOM,并于1998年10月完成了第一級 DOM,即:DOM1。W3C將DOM定義為一個與平臺和編程語言無關的接口,通過這個接口程序和腳本可以動態的訪問和修改文檔的內容、結構和樣式。 DOM1級主要定義了HTML和XML文檔的底層結構。在DOM1中,DOM由兩個模塊組成:DOM Core(DOM核心)和DOM HTML。其中,DOM Core規定了基于XML的文檔結構標準,通過這個標準簡化了對文檔中任意部分的訪問和操作。DOM HTML則在DOM核心的基礎上加以擴展,添加了針對HTML的對象和方法,如:JavaScript中的Document對象 #### DOM2與DOM3 在DOM1的基礎上DOM2和DOM3引入了更多的交互能力,也支持了更高級的XML特性。DOM2和DOM3將DOM分為更多具有聯系的模塊。DOM2級在原來DOM的基礎上又擴充了鼠標、用戶界面事件、范圍、遍歷等細分模塊,而且通過對象接口增加了對CSS的支持。DOM1級中的DOM核心模塊也經過擴展開始支持XML命名空間。在DOM2中引入了下列模塊,在模塊包含了眾多新類型和新接口: * DOM視圖(DOM Views):定義了跟蹤不同文檔視圖的接口 * DOM事件(DOM Events):定義了事件和事件處理的接口 * DOM樣式(DOM Style):定義了基于CSS為元素應用樣式的接口 * DOM遍歷和范圍(DOM Traversal and Range):定義了遍歷和操作文檔樹的接口 DOM3進一步擴展了DOM,在DOM3中引入了以下模塊: * DOM加載和保存模塊(DOM Load and Save):引入了以統一方式加載和保存文檔的方法 * DOM驗證模塊(DOM Validation):定義了驗證文檔的方法 * DOM核心的擴展(DOM Style):支持XML 1.0規范,涉及XML Infoset、XPath和XML Base > [IT筆錄](http://itbilu.com/javascript/js/Vyxodm_1g.html)
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看