首頁 > web前端 > html教學 > 如何使用JS中DOM來控制HTML元素

如何使用JS中DOM來控制HTML元素

不言
發布: 2018-06-09 16:05:14
原創
1619 人瀏覽過

這篇文章主要介紹了JS中使用DOM來控制HTML元素的相關資料,需要的朋友可以參考下

1.getElementsByName():取得name.

##~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~`

範例:

##

<p name="pn">hello</p>
   <p name="pn">hello</p>
   <p name="pn">hello</p>
   <script>
       function getName(){
                  var count=document.getElementsByName("pn");
                  alert(count.length);
                  var p=count[2];
                  p.innerHTML="world";
          }
   </script>
登入後複製

結果:介面印出三個hello,並且伴隨一個提示框“3”,當點擊確定後,介面顯示的內容變成hello hello world

~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~·····

2.getElementsByTagName():取得元素。

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

#例

#

<p>hello</p>
   <p>hello</p>
   <p>hello</p>
   <script>
       function getName(){
                  var count=document.getElementsByTagName("p");
                  alert(count.length);
                  var p=count[2];
                  p.innerHTML="world";
          }
   </script>
登入後複製

結果:介面印出三個hello,並且伴隨一個提示框“3”,當點擊確定後,介面顯示的內容變成hello hello world

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

3.getAttribute():取得元素屬性。

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

#例


#
<a id="aid" title="得到a的标签属性"></a>
   <script>
           function getAttr1(){
               var anode=document.getElementById("aid");
               var attr=anode.getAttribute("id");
               alert("a的ID是:"+attr);
            }
           function getAttr2(){
              var anode=document.getElementById("aid");
              var attr=anode.getAttribute("title");
              alert("a的title内容是:"+attr);
           }
            getAttr1();
            getAttr2();
  </script>
登入後複製

結果:彈出提示框“a的ID是:aid”.點擊確定後,彈出提示框“a的title內容是:得到a的標籤屬性” 。

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

4.setAttribute()設定元素屬性。

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

#例

#

<a id="aid2">aid2</a> 
   <script>
        function setAttr(){
           var anode=document.getElementById("aid2");
           anode.setAttribute("title","动态设置a的title属性");
           var attr=anode.getAttribute("title");
           alert("动态设置的title值为:"+attr);
       }
       setAttr();
   </script>
登入後複製

結果:彈出提示方塊「動態設定的title值為:動態設定a的title屬性」。

~~~~~~~~~~~~~~~~~~~~~~~~~~~~

5.childNodes():存取子節點。

~~~~~~~~~~~~~~~~~~~~~~~~~~··

#例

#
<ul><li>1</li><li>2</li><li>3</li></ul>
   <script>
           function getChildNode(){
                var childnode=document.getElementsByTagName("ul")[0].childNodes;
                alert(childnode.length);
                alert(childnode[0].nodeType);
           }
          getChildNode();
  </script>
登入後複製

結果:介面列印出.1 .2 .3彈出對話框“3”,按確定後彈出“1”。

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

#6.parentNode():存取父節點。

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

##
<p>
        <p id="pid"></p>
   </p>
   <script>
        function getParentNode(){
            var p=document.getElementById("pid");
            alert(p.parentNode.nodeName);
        }
       getParentNode();
  </script>
登入後複製

結果:彈出提示框:p.

~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~

7.createElement():建立元素節點。

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

#例:

 <script>
       function createNode(){
             var body=document.body;
             var input=document.createElement("input");
             input.type="button";
             input.value="按钮";
             body.appendChild(input);//插入节点
        }
         createNode();
 </script>
登入後複製

結果:出現一個按鈕。

~~~~~~~~~~~~~~~~~~~~~~~~~~~

8.createTextNode():建立文字節點。

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

例如範例:

##
    <script>
        function createNode(){
              var element = document.createElement("p");
              element.className = "message";
              var textNode = document.createTextNode("Hello world!");
              element.appendChild(textNode);
              document.body.appendChild(element);
        }
      createNode();
   </script>
登入後複製

程式碼分析:這個範例建立了一個新

元素並為它指定了值為「message」的class特性。然後,又建立了一個文字節點,並將其加入到前面建立的元素中。最後一步,就是將這個元素加入了文件中的元素中,這樣可以在瀏覽器中看到新建立的元素和文字節點了。

結果:頁面顯示hello world。

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

9.insertBefore():插入節點。

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

# 範例

#
<p id="p">
          <p id="pid">p元素</p>
    </p>
    <script>
        function addNode(){
             var p=document.getElementById("p");
             var node=document.getElementById("pid");
             var newnode=document.createElement("p");
             newnode.innerHTML="动态插入一个p元素";
             p.insertBefore(newnode,node);
        }
        addNode();
    </script>
登入後複製

結果:介面列印:動態插入一個p元素

#                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~

#10.removeChild():刪除節點。

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

 範例

#
<p id="p">
          <p id="pid">p元素</p>
    </p>
    <script>
       function removeNode(){
               var p=document.getElementById("p");
               var p=p.removeChild(p.childNodes[1]);
        }
      removeNode();
   </script>
登入後複製

結果:介面什麼也沒顯示。

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

#11.offsetHeight :網頁尺寸

12.scrollHeight:網頁尺寸
~~~~~~~~~~~~~~~~~~~~~~~~~~~

#範例:

  <script>
      function getSize(){
          var width=document.documentElement.offsetWidth||document.body.offsetWidth;//解决兼容问题
          var height=document.documentElement.offsetHeight||document.body.offsetHeight;
          alert(width+","+height);
      }
      getSize();
 </script>
登入後複製

###顯示結果:##############以上就是本文的全部內容,希望對大家的學習有幫助,更多相關內容請關注PHP中文網! ######相關推薦:#########如何在html中顯示JSON資料######################### ##

以上是如何使用JS中DOM來控制HTML元素的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板