HTML DOM Document 對象


一·根據 W3C 的 HTML DOM 標准,HTML 文檔中的所有內容都是節點(NODE):

    整個文檔是一個文檔節點(document對象)

    每個 HTML 元素是元素節點(element 對象)

    HTML 元素內的文本是文本節點(text對象)

    每個 HTML 屬性是屬性節點(attribute對象)

    注釋是注釋節點(comment對象)

二·DOM節點屬性

  (自身)屬性:

    attributes - 節點(元素)的屬性節點

    nodeType – 節點類型

    nodeValue – 節點值

    nodeName – 節點名稱

    innerHTML - 節點(元素)的文本值

<html lang="en">
<head>
    <meta charset="UTF-8">
    <title></title>
</head>
<body>
<div class="div1">
    <p name="littleP" class="p1">hello p</p>
</div>
<script>
   var ele=document.getElementsByClassName("p1")[0];

    console.log(ele)
   console.log(ele.nodeName);//獲取節點名稱
   console.log(ele.nodeType);//獲取節點類型
   console.log(ele.nodeValue);//獲取節點值
   console.log(ele.innerHTML);//獲取節點文本
   ele.innerHTML="hello world"//更改節點文本
</script>
</body>
</html>
View Code

 

 

  導航屬性:

    parentNode - 節點(元素)的父節點 (推薦)

    firstChild – 節點下第一個子元素

    lastChild – 節點下最后一個子元素

    childNodes - 節點(元素)的子節點 

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title></title>
</head>
<body>
<div class="div1">
    <p name="littleP" class="p1">hello p</p>
    <div>divdiv</div>
</div>
<script>
   var ele=document.getElementsByClassName("p1")[0];

   var p_ele=ele.parentNode;//獲取節點對象的父節點
   console.log(p_ele.nodeName)
    var b_ele=ele.nextSibling;//獲取節點對象的同胞節點(不推薦使用,會取出換行符)
   console.log(b_ele.nodeName);
    var b_ele2=ele.nextElementSibling;//獲取節點對象的同胞節點(推薦使用)
    console.log(b_ele2.nodeName)
</script>
</body>
</html>
View Code

 

三·訪問 HTML 元素(節點),訪問 HTML 元素等同於訪問節點,我們能夠以不同的方式來訪問 HTML 元素:

  頁面查找:

    通過使用 getElementById() 方法 

    通過使用 getElementsByTagName() 方法 

    通過使用 getElementsByClassName() 方法 

    通過使用 getElementsByName() 方法 

四·HTML DOM Event(事件)

  HTML  的新特性之一是有能力使 HTML 事件觸發瀏覽器中的動作(action),比如當用戶點擊某個 HTML 元素時啟動一段 JavaScript。

  下面是一個屬性列表,這些屬性可插入 HTML 標簽來定義事件動作。

onclick               當用戶點擊某個對象時調用的事件句柄。
ondblclick          當用戶雙擊某個對象時調用的事件句柄。
onfocus             元素獲得焦點。               //練習:輸入框
onblur               元素失去焦點。               
onchange          域的內容被改變。            
onkeydown        某個鍵盤按鍵被按下。         
onkeypress        某個鍵盤按鍵被按下並松開。
onkeyup            某個鍵盤按鍵被松開。
onload               一張頁面或一幅圖像完成加載。(只給 body元素加)
onmousedown    鼠標按鈕被按下。
onmousemove    鼠標被移動。
onmouseout       鼠標從某元素移開。
onmouseover      鼠標移到某元素之上。
onmouseleave     鼠標從元素離開
onselect              文本被選中。
onsubmit            確認按鈕被點擊。(只能給form元素使用)

 

 

 

 

  為節點(元素)附加事件屬性的兩種方式

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title></title>
</head>
<body>
<div onclick="alert(123)">點我</div>
<p id="abc">試一試!</p>

<script>
    var ele=document.getElementById("abc");


    ele.onclick=function(){
        alert("hi");
    };

</script>
</body>
</html>
View Code

 

Event 對象代表事件的狀態,比如事件在其中發生的元素、鍵盤按鍵的狀態、鼠標的位置、鼠標按鈕的狀態。事件通常與函數結合使用,函數不會在事件發生前被執行!event對象在事件發生時系統已經創建好了,並且會在事件函數被調用時傳給事件函數.我們獲得僅僅需要接收一下即可.

 

 

 

 


免責聲明!

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



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