js学习笔记33----DOM操作

Posted 前端[色色]

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js学习笔记33----DOM操作相关的知识,希望对你有一定的参考价值。

前面有讲过一些DOM的基本概念

今天来说一下DOM 的一些基本操作,主要有创建节点,追加节点,删除节点。

1.创建DOM元素:

createElement(标签名) —— 创建一个节点

appendChild(节点) —— 追加一个节点

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>DOM 操作</title>
        <script type="text/javascript">
            window.onload = function(){
                var oBtn = document.getElementById("btn1");
                var oUl = document.getElementById("ul1");
                var oTxt = document.getElementById("txt1");            
                oBtn.onclick = function(){
                    var oLi = document.createElement(\'li\');
                    oLi.innerHTML = oTxt.value;
                    oUl.appendChild(oLi);                    
                }
            }
        </script>
    </head>
    <body>
        <input type="text" id="txt1" />
        <input type="button" name="btn1" id="btn1" value="创建li" />
        <ul id="ul1"></ul>
    </body>
</html>

 

2.插入元素:

insertBefore(节点, 原有节点) —— 在已有元素前插入

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>DOM 操作</title>
        <script type="text/javascript">
            window.onload = function(){
                var oBtn = document.getElementById("btn1");
                var oUl = document.getElementById("ul1");
                var oTxt = document.getElementById("txt1");
                var aLi = document.getElementsByTagName("li");
                
                oBtn.onclick = function(){
                    var oLi = document.createElement(\'li\');
                    oLi.innerHTML = oTxt.value;
                    if(aLi.length > 0){
                        oUl.insertBefore(oLi, aLi[0]);
                    }else{
                        oUl.appendChild(oLi);
                    }
                    
                }
            }
        </script>
    </head>
    <body>
        <input type="text" id="txt1" />
        <input type="button" name="btn1" id="btn1" value="创建li" />
        <ul id="ul1"></ul>
    </body>
</html>

 

3.删除节点:

removeChild(节点)  —— 删除一个节点

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>DOM 操作</title>
        <script type="text/javascript">
            window.onload = function(){
                //删除节点
                var oUl = document.getElementById("ul1");
                var aA = document.getElementsByTagName("a");
                
                for(var i=0;i<aA.length;i++){
                    aA[i].onclick = function(){
                        oUl.removeChild(this.parentNode);
                    }
                }
            }
        </script>
    </head>
    <body>
        <ul id="ul1">
            <li>第一条 <a href="javascript:;">删除</a></li>
            <li>第二条 <a href="javascript:;">删除</a></li>
            <li>第三条 <a href="javascript:;">删除</a></li>
        </ul>
    </body>
</html>

 

4.文档碎片(只能提升低级浏览器的性能,稍作了解即可):

createDocumentFragment 

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>文档碎片</title>
        <script type="text/javascript">
            window.onload = function(){
                
                var oUl = document.getElementById("ul1");
                var oFrag = document.createDocumentFragment(); //创建文档碎片
                
                for(var i=0;i<10000;i++){
                    var oLi = document.createElement("li");
                    oFrag.appendChild(oLi);
                }
                
                oUl.appendChild(oFrag);
            }
        </script>
    </head>
    <body>
        <ul id="ul1">
            
        </ul>
    </body>
</html>

 

以上是关于js学习笔记33----DOM操作的主要内容,如果未能解决你的问题,请参考以下文章

js-权威指南学习笔记14

Xitrum学习笔记08 - JavaScript and JSON

JQuery学习笔记

[原创]java WEB学习笔记61:Struts2学习之路--通用标签 property,uri,param,set,push,if-else,itertor,sort,date,a标签等(代码片段

Node-学习笔记

js教程系列33 :javascript-DOM节点属性