<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>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                背景:學習過JavaScript的我們都知道,JavaScript 有三部分構成,ECMAScript,DOM和BOM,根據宿主(瀏覽器)的不同,具體的表現形式也不盡相同,ie和其他的瀏覽器風格迥異。BOM和DOM,從字面上進行對比,可以很清晰的看出,BOM與DOM的最大區別就是B(Browser)和D(Document)的區別,一字之差,所表達的東西就不一樣,到底二者有何不同,用在什么地方,下面簡單介紹一下這兩者的聯系與區別。 ### 一、BOM BOM:(Browser Object Mode) 瀏覽器對象模型。 它提供了很多對象,用于訪問瀏覽器的功能。BOM缺少規范,每個瀏覽器提供商又按照自己想法去擴展它,那么瀏覽器共有對象就成了事實的標準。所以,BOM本身是沒有標準的或者還沒有哪個組織去標準它。 BOM的對象:window對象、location對象、history對象** 1、window對象 BOM的核心對象是window,它表示瀏覽器的一個實例。window對象處于JavaScript結構的最頂層,對于每個打開的窗口,系統都會自動為其定義window 對象。 ![](https://box.kancloud.cn/2016-03-28_56f8f89c4e271.jpg) window對象的屬性: window對象有一系列的屬性,這些屬性本身也是對象。 ![](https://box.kancloud.cn/2016-03-28_56f8f89c781c1.jpg) ![](https://box.kancloud.cn/2016-03-28_56f8f89c8f21f.jpg) window對象的方法: ![](https://box.kancloud.cn/2016-03-28_56f8f89cb0390.jpg) ![](https://box.kancloud.cn/2016-03-28_56f8f89cc9ee0.jpg) window 下的屬性和方法,可以使用window.屬性、 window.方法()或者直接屬性、 方法()的方式調用。例如: window.alert()和alert()是一個意思。 2、location對象 location是 BOM對象之一,它提供了與當前窗口中加載的文檔有關的信息,還提供了一些導航功能。事實上, location對象是 window 對象的屬性,也是 document對象的屬性;所以 window.location和document.location等效。 location對象的屬性: ![](https://box.kancloud.cn/2016-03-28_56f8f89ce3856.jpg) ![](https://box.kancloud.cn/2016-03-28_56f8f89d0278a.jpg) location對象的方法: ![](https://box.kancloud.cn/2016-03-28_56f8f89d18b37.jpg) 3、history對象 history對象是 window對象的屬性, 它保存著用戶上網的記錄, 從窗口被打開的那一刻算起。 history對象的屬性: ![](https://box.kancloud.cn/2016-03-28_56f8f89d2acdd.jpg) history對象的方法: ![](https://box.kancloud.cn/2016-03-28_56f8f89d3e39a.jpg) ### 二、DOM DOM:(Document Object Model)文檔對象模型。 針對 HTML和 XML文檔的 API( 應用程序接口)。 DOM描繪了一個層次化的節點樹,運行開發人員添加、移除和修改頁面的某一部分。 DOM脫胎于 Netscape及微軟公司創始的 DHTML(動態 HTML),但現在它已經成為表現和操作頁面標記的真正跨平臺、語言中立的方式。 DOM中的三個字母, D(文檔)可以理解為整個 Web加載的網頁文檔; O(對象)可以理解為類似 window對象之類的東西,可以調用屬性和方法,這里我們說的是 document對象; M(模型)可以理解為網頁文檔的樹型結構。 DOM有三個等級, 分別是 DOM1、 DOM2、 DOM3, 并且 DOM1在 1998年 10月成為W3C標準。 DOM1所支持的瀏覽器包括 IE6+、 Firefox、 Safari、 Chrome和 Opera1.7+。 PS:IE中的所有 DOM對象都是以 COM對象的形式實現的,這意味著 IE中的 DOM?可能會和其他瀏覽器有一定的差異。 1、節點 加載 HTML頁面時, Web瀏覽器生成一個樹型結構, 用來表示頁面內部結構。 DOM將這種樹型結構理解為由節點組成。 ![](https://box.kancloud.cn/2016-03-28_56f8f89d53706.jpg) 從上圖的樹型結構,我們理解幾個概念, html標簽沒有父輩,沒有兄弟,所以 html標簽為根標簽。head標簽是 html子標簽, meta和 title標簽之間是兄弟關系。 如果把每個標簽當作一個節點的話,那么這些節點組合成了一棵節點樹。* 2、元素節點方法 ![](https://box.kancloud.cn/2016-03-28_56f8f89d6c7e1.jpg) 3、DOM的node節點和層次節點屬性 node節點可以分為元素節點、屬性節點和文本節點,而這些節點又有三個非常有用的屬性,分別為: nodeName、 nodeType和 nodeValue。 節點的層次結構可以劃分為: 父節點與子節點、 兄弟節點這兩種。 當我們獲取其中一個元素節點的時候,就可以使用層次節點屬性來獲取它相關層次的節點。 ![](https://box.kancloud.cn/2016-03-28_56f8f89d89c64.jpg) ![](https://box.kancloud.cn/2016-03-28_56f8f89da1c38.jpg) 4、DOM節點操作 DOM不單單可以查找節點, 也可以創建節點、 復制節點、 插入節點、 刪除節點和替換節點。 ![](https://box.kancloud.cn/2016-03-28_56f8f89dbfd74.jpg) ### 三、聯系 ![](https://box.kancloud.cn/2016-03-28_56f8f89de13a2.jpg) 從圖中可以看出,DOM的最根本的對象是BOM的window對象的子對象。 Document對象,實際上是window對象的屬性。這個對象的獨特之處是唯一一個既屬于BOM又屬于DOM的對象。從BOM角度看,document對象由一系列集合構成,這些集合可以訪問文檔的各個部分。 ### 四、區別 ![](https://box.kancloud.cn/2016-03-28_56f8f89e04d5e.jpg) DOM描述了處理網頁內容的方法和接口,BOM描述了與瀏覽器進行交互的方法和接口。 ### 五、學習心得 1、一字之差,結果相差甚遠,作為代碼的耕耘者,一定要仔細認真的對待每一個字母。 2、隨著社會進步,軟件的更新換代也在加速,從原來的無標準到現在的標準健全,是一種質的飛躍。 3、即使身在同一個領域,也有不同的側重點。
                  <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>

                              哎呀哎呀视频在线观看