《java DOM 編程藝術》學習筆記

來源:互聯網
上載者:User

1.DOM的概念:DOM是一套對文檔的內容進行抽象和概念化的方法。W3c對其定義為:一種與系統平台和程式設計語言無關的介面,程式和指令碼可以通過這個介面動態地對文檔內容、結構、樣式進行訪問和修改。

2.第一次使用的變數,記住最好加上var

3.getElementById得到的結果是一個對象;getElementByTagName()得到的結果是一個數組,哪怕元素的個數只有一個;

   getAttribute()、setAttribute()函數只能通過對象才可以使用,即使是document也不可以調用。

說明:setAttribute()做出的修改不會反應在文檔本身的原始碼裡。

引申:DOM的工作模式---先載入文檔的靜態內容、再以動態方式對他們進行重新整理,動態重新整理不影響文檔的靜態內容。

4.文檔中每一個元素節點都是一個對象

5.事件處理機制:執行完javascript函數之後,如果返回的結果為true,則事件將會被執行,如果為false,則說明沒有被執行,事件也就不會發生。

6.javascript使用原則:

  6.1 留有退路:如果沒有留有退路,一會死使用者體驗降低,二是影響網頁在搜尋引擎上的排名

           a.通過“javascript:”偽協議調用javascript代碼的做法非常不好;

           b.內嵌的事件處理函數,如果瀏覽器禁止javascript功能,那麼內嵌函數的功能就無法實現。

      經典的預留退路的例子:<a href="http://google.com.hk" onclick="popUp('http://google.com.hk');return false;">   

      6.2   分離javascript

      6.3   向後相容:首先是進行對象檢測(object dectection),使用if語句來進行檢測,例如:if(!document.getElementById) return false;

7.匿名函數:是一種“臨時抱佛腳”式的函數建立方法,沒有名字,只能在哪定義在哪使用。

8.結構和行為的相互分離程度越大越好

9. creatElement()只能夠建立元素節點,appendChild()可以把子節點附加到父節點上面,createTextNode()用於建立文本節點,insertBefore()使用者在某節點之前建立節點,aa.nextSbling得到aa的下一個兄弟節點,parentNode:父節點,previousSibling:上一個節點,childNodes:位元組點,firstChild:第一個子節點,lastChild:最後一個子節點,nodeType:節點類型,nodeName:節點名稱。

10.javscript DOM主要用於充實文檔的內容,要避免把核心內容通過DOM添加到文檔中去。

11.為class屬性是CSS深入DOM領域的證據。

12.使用a.style得到的是一個對象,並且只能夠處理內嵌樣式,同時使用a.className(+)="css",也可以修改樣式。

 

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.