美文网首页
JavaScript——DOM节点动态操作

JavaScript——DOM节点动态操作

作者: 紫荆峰 | 来源:发表于2016-12-03 14:38 被阅读0次

0.前言

上一节把每个的节点操作都演示一遍,可累死我了,今天就不一一演示了,直接上代码,注释在代码里,写的很详细。至于运行效果,大家就自己复制粘贴吧,抱歉啊!!!

1.正文

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>DOM节点动态操作</title>
    <style type="text/css">
        #box{
            width: 300px;
            height: 300px;
            background-color: yellow;
        }
        #box1{
            width: 100px;
            height: 100px;
            background-color: red;
        }
        #box2{
            width: 50px;
            height: 50px;
            background-color: blue;
        }
    </style>
</head>
<body>
    <div id="box">
        <p>1</p>
        <p>2</p>
    </div>
    <script type="text/javascript">
        
        //创建元素节点
        var jsDiv = document.createElement("div");
        jsDiv.id = "box1";
        console.log(jsDiv);

        
        //添加子节点(这个是添加到最后)
        //document.body === body标签 === body元素节点
        //公式:元素节点(parentNode).appendChild(childNode)
        //功能:在parentNode节点的所有子节点后面添加一个子节点
        document.body.appendChild(jsDiv);


        //添加子节点(这个是添加到指定位置)
        //公式:元素节点(parentNode).insertBefore(newdNode,currentNode);
        var jsDiv2 = document.createElement("div");
        jsDiv2.id = "box2"
        // document.body.insertBefore(jsDiv2,jsDiv);
        jsDiv.parentNode.insertBefore(jsDiv2,jsDiv); //推荐使用这个方法。


        //创建文本节点
        var textNode = document.createTextNode("lsls");
        
        //添加文本节点
        var jsDivBox1 = document.getElementById("box");
        var allNodes = jsDivBox1.childNodes; //所有子节点
        var p = allNodes[1];
        p.appendChild(textNode);
        console.log(allNodes);


        //替换节点
        //公式:旧节点的父节点.replaceNode(新节点,旧节点);
        //注意:下面的语句会将p在jsDivBox1里面移除
        // document.body.replaceChild(p,jsDiv2);
        var newDiv = document.createElement("div");
        newDiv.style.width = "100px";
        newDiv.style.height = "100px";
        newDiv.style.backgroundColor = "blue";
        jsDiv2.parentNode.replaceChild(newDiv,jsDiv2);




        //复制节点
        //只复制标签本身,不包含子节点
        var con1 = jsDivBox1.cloneNode();
        console.log(con1);
        //包含了所有的后代节点
        var con2 = jsDivBox1.cloneNode(true);
        console.log(con2);




        //删除节点
        //公式:待删除节点.removeChild(待删除节点)
        newDiv.parentNode.removeChild(newDiv);



        //offsetParent(参照父元素)
        console.log(p.offsetLeft);
        var ofP = p.offsetParent;
        console.log(ofP);
    </script>
</body>
</html>
offsetParent.png

相关文章

  • DOM (javascript DOM节点操作)

    DOM (javascript DOM节点操作) 本节目录 查找DOM元素 DOM节点操作 javascript操...

  • JavaScript——DOM节点动态操作

    0.前言 上一节把每个的节点操作都演示一遍,可累死我了,今天就不一一演示了,直接上代码,注释在代码里,写的很详细。...

  • jQuery-DOM篇

    DOM创建节点及节点属性 通过JavaScript可以很方便的获取DOM节点,从而进行一系列的DOM操作。但实际上...

  • dom操作

    javascript 原生方法对dom节点的操作具体包括:创建、添加、删除、替换、插入、复制、移动等。 dom操作...

  • 【前端】-029-DOM编程-节点操作

    节点的属性 节点操作 除了通过DOM树中的父子、兄弟关系获取节点外,还可以通过 JavaScript 中的DOM接...

  • JavaScript DOM常用操作

    JavaScript的DOM操作主要包括: 更新:更新该DOM节点的内容,相当于更新了该DOM节点表示的HTML的...

  • DOM动态集合

    DOM是JavaScript中重要部分之一,在DOM中有一个动态集合。 这个动态集合包含节点的集合(NodeLis...

  • 【DOM】DOM的操作(增删改查)

    操作DOM的核心就是增删改查 参考: JavaScript DOM编程——API详解 目录 一、节点创建型API ...

  • javascript笔记9

    节点常用属性 DOM节点动态操作 CSS修饰#box { width: 100px;height: 100px;...

  • 前端面试题总结(算法)

    javascript递归遍历所有DOM文档节点 javascript递归遍历所有DOM文档节点 HTTP 方法:G...

网友评论

      本文标题:JavaScript——DOM节点动态操作

      本文链接:https://www.haomeiwen.com/subject/velcmttx.html