节点的增加,删除,创建,插入

节点属性{createElement,append(),insertBefore,removeChild,replaceChild,cloneNode}

【为了防止忘记】

createElement

//创建一个p标签
var tit=document.createElement('p');
//为p标签添加一个id
tit.setAttribute('id','divTxt');

append() && appendChild()

var box = document.createElement('box')
var ul = document.createElement('ul')
var li = document.createElement('li')
var a = document.createElement('a')
 a.href = 'http://www.baidu.com';
a.innerHTML = '百度';
// 将子标签添加到父标签内
li.appendChild(a);
ul.appendChild(li);
box.appendChild(ul);
//append()  可以同时传入多个节点或字符串,没有返回值;
//appendChild() 只能传一个节点,且不直接支持传字符串【需要appendChild(document.createTextElement('字符串'))代替】,
返回追加的 Node 节点;若 appendChild() 的参数是页面存在的一个元素
,则执行后原来的元素会被移除;
例如:document.getElement("a").appendChild(document.getElementByIdx("b")),执行后,b 元素会先被移除,然后再添加到 a 中。
//innerHTML添加的是纯字符串,不能获取内部元素的属性;不同于 appendChild 添加到的是 dom 对象,返回的也是 dom 对象,可以通过 dom 对象访问获取元素的各种属性。

insertBefore

<body>
    <div id="box">
        <p>1</p>
        <p>2</p>
        <p>3</p>
        <p>4</p>
    </div>
</body>
<script>
    var box = document.getElementById('box')

    var node = document.createElement('p')

    node.innerHTML = 123455

    // insertBefore插入 。。。。之前 nextSibling  .。。之后
    box.insertBefore(node,box.children[0].nextSibling)
//输出:1 , 123455  ,2  , 3  ,4

</script>

insertBefore,removeChild,replaceChild,cloneNode

<body>
    <div id="box" class="abc">
        <p>1</p>
        <p>2</p>
        <p>3</p>
    </div>
</body>
<script>
    var box = document.getElementById('box')

    // 删除子节点
    // box.removeChild(box.children[2])

    // 替换子节点 who替换who
    box.replaceChild(box.children[2],box.children[0])

    // 添加节点
    // var txt = document.createElement('p')
    // txt.innerHTML = 4;
    // box.append(txt)

    // 克隆节点
    //判断为true #box2复制#box1内的所有标签
    var node = box.cloneNode(true);
    node.id = 'box2'
    box.append(node)
    console.log(node)

</script>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值