js增加、删除、替换DOM对象
当网页被加载时,浏览器会创建页面的文档对象模型DOM,即Document Object Model
整个文档为一个文档节点(document对象)
每个html元素为一个元素节点(element对象)
html元素内的文本为文本节点(textNode对象)
html元素的属性为属性节点(attribute对象)
html注释为注释节点(comment对象)
节点自身属性:
nodeType:节点类型
nodeName:节点名称
nodeValue:节点值
attributes:节点的属性节点
innerHTML:节点的所有内容,包含节点下的文本,子标签等
innerText:节点的文本内容,不包含子标签
导航属性:
parentElement / parentNode:父节点标签
children:所有子标签
firstElementChild:节点的第一个子元素标签
lastElementChild:节点的最后一个子元素标签
nextElementSibling:下一个兄弟元素标签
previousElementSibling:上一个兄弟元素标签
添加元素
parent.appendChild(child) :用于向parent父元素中添加新元素,添加到尾部
parent.insertBefore(newchild,oldchild):用于向parent父元素中添加新元素newchild,且添加到oldchild元素的前面。
<div id="div" style='background:pink'> <!--一个div下包含两个段落-->
<p id="p1">这是一个段落。</p>
<p id="p2">这是另外一个段落。</p>
</div>
<script>
var para1 = document.createElement("p"); //创建段落p元素
var node1 = document.createTextNode("这是一个新的段落,添加到尾部。"); //创建文本节点
para1.appendChild(node1); //将文本节点添加到p元素,这两步可直接使用para1.innerHTML='这是一个新的段落,添加到尾部。'
var para2 = document.createElement("p");
var node2 = document.createTextNode("这是一个新的段落,添加到开头。");
para2.appendChild(node2);
var element1 = document.getElementById("div"); //获取父元素div
var element2 = document.getElementById("p1"); //获取第一个段落元素
element1.appendChild(para1); //向父元素中添加创建的子元素,默认放在最后面
element1.insertBefore(para2,element2); //向父元素中添加创建的子元素,位置在element2元素前面
</script>
以上,document.createElement("p")为创建段落,document.createTextNode("*")为创建文本节点。
element1.appendChild(para1)为添加子元素到末尾,element1.insertBefore(para2,element2)为添加子元素到指定元素前面。

删除元素parent.removeChild(child),删除元素必须知道其父元素
<div id="div1" style='background:pink'>
<p id="p1">这是一个段落。</p>
<p id="p2">这是另外一个段落。</p>
</div>
<script>
var parent = document.getElementById("div1");
var child = document.getElementById("p1");
parent.removeChild(child);
</script>

替换元素parent.replaceChild(newchild,oldchild),使用newchild元素替换oldchild元素
<div id="div1" style='background:pink'>
<p id="p1">这是一个段落。</p>
<p id="p2">这是另外一个段落。</p>
</div>
<script>
var para = document.createElement("p");
var node = document.createTextNode("这是一个新的段落。");
para.appendChild(node);
var parent = document.getElementById("div1");
var child = document.getElementById("p1");
parent.replaceChild(para, child);
</script>

js增加、删除、替换DOM对象的更多相关文章
- 百万年薪python之路 -- JS的BOM与DOM对象
BOM对象 location对象 location.href 获取URL location.href="URL" // 跳转到指定页面 location.reload() 重新加载 ...
- js下 Day01、DOM对象,BOM浏览器对象模型
一.初识DOM 1.什么是DOM?为什么学习DOM 2.DOM是实现js在网页实现交互的关键环节,我们的js代码就是通过DOM的方法来实现对于html内容的操作. 3.认识DOM实现了js和网页结合的 ...
- js ajax 传送xml dom对象到服务器
客户端代码 1 <script> var isie = true; var xmlhttp = null; function createXMLHTTP() {//创建XMLXMLHttp ...
- jQuery -> 删除/替换DOM元素
删除 删除操作很easy,直接在结果集后链式调用remove()方法就可以. 比如.要删除下面html脚本中全部的a元素.直接通过 $('a'.remove(); 就能够做到了. <h3> ...
- js点滴知识(1) -- 获取DOM对象和编码
在今天的工作中发现了一些小的问题,在网上查了一下,才知道自己的js才是冰山一角,以后要虚心向他人学习,要虚怀若谷. 发现一:js获取DOM对象与jquery的区别 先前总以为,二者是一样的,最近才知道 ...
- js获取dom对象style样式的值
js获取到的dom对象的style通常是没有值得,因为我们都写在外部文件中,从慕课网上见到讲师封装的一个方法,挺不错.特此记录下来. function getStyle(obj,attr){ if(o ...
- DOM 对象和jQuery对象的转换
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- 细看JS中的BOM、DOM对象
DOM对象模型 DOM(Document Object Model),是指文档对象模型,是W3C组织推荐的处理可扩展标志语言的 ...
- 56、jsのBOM对象与DOM对象
javascript的Bom和Dom对象使我们学习的重点,这篇随笔可以重点阅读 一.BOM对象 1.window对象 所有浏览器都支持 window 对象.概念上讲.一个html文档对应一个windo ...
随机推荐
- Vbox下的linux和windows共享文件设置
参考链接: https://jingyan.baidu.com/article/2fb0ba40541a5900f2ec5f07.html
- React对比Vue(03 事件的对比,传递参数对比,事件对象,ref获取DOM节点,表单事件,键盘事件,约束非约束组件等)
import React from 'react'; class Baby extends React.Component { constructor (props) { super(props) t ...
- element-ui的滚动条组件el-scrollbar(官方没有)
<template> <div style="height:600px;"> <el-scrollbar style="height:100 ...
- 从零开始一起学习SLAM | 你好,点云
本文提纲 先热热身点云是啥你知道点云优缺点吗?点云库PCL:开发者的福音PCL安装指北炒鸡简单的PCL实践留个作业再走先热热身 小白:hi,师兄,好久不见师兄:师妹好,上周单应矩阵作业做了吗?小白:嗯 ...
- 软工网络15团队作业4——Alpha阶段敏捷冲刺3.0
软工网络15团队作业4--Alpha阶段敏捷冲刺3.0 1.每天举行站立式会议,提供当天站立式会议照片一张. 2.项目每个成员的昨天进展.存在问题.今天安排. 成员 昨天已完成 今天计划完成 郭炜埕 ...
- 加快cin读取速度
cin在读取大量数据时会比C里的scanf慢很多,但这并不是cin"无能",而是C++为了兼容C,对cin做了scanf的同步,只要关闭这个同步,cin就会有不弱于scanf的速度 ...
- Codeforces Round #324 (Div. 2) E
这题贪心,考虑先放第一个,然后从第一个数在p中的位置, 不断的往前走,和在他后面的那些数组进行交换,因为这样交换可以提高最大的效率,就是说你花费了1但是使得两个点都朝他的木匾节点减少了1 #inclu ...
- IoC, DI,Spring.net
IoC : Inversion of Control , 控制反转,就是创建对象(实例)的权利由开发人员自己控制New转到了由容器来控制.实现了解耦. DI: Dependency Injection ...
- 使用js实现登录随机验证码的效果
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...
- DeepLearning资源汇总
仍旧不完全统计,边学边加 Bagging与随机森林算法原理 分类数据集 MNIST Cifar10 ILSVRC排行榜 Cifar10 board train loss与test loss结果分析 ...