web前端之路之js操作DOM元素
目录:??
- DOM的对象方法??
- 其中比较重要的
- 通过案例进行学习??
- 创建一个新的节点并插入页面
- 创建一个p节点用于存放文字
- 创建文本节点并且添加到p标签下
- 将文本节点成为p标签的子节点
- 将极品飞车添加到我们的标签中
- 最终结果??
- 把新创建的节点添加到某个元素前面
- 最终结果??
- 使用新子节点替换旧子节点
- 最终结果??
- 删除子节点
- 最终结果??
- 获取元素父节点
- 读取元素内部的HTML代码
- 最终结果
- 修改元素内的HTML内容
- 最终结果
- 使用innerHTML简化我们添加元素的流程
- 创建一个新的节点并插入页面
DOM的对象方法??

其中比较重要的
增:
appendChild();
insertBefore();
createElement();
createTextNode();
删:
removeChild();
改:
replaceChild();
通过案例进行学习??
我们将要通过一个案例来把这几个函数依次掌握一下

这个是我们的项目展示后的样子,此时没有任何css代码
网页端代码如下
DAY4
彩虹六号
求生之路
GTA5
刺客信条
我们之后的代码都不会再全部展示,所有的内容都只是涉及标签里面的内容
创建一个新的节点并插入页面
想要完成该操作需要完成两个步骤,首先是新建,然后才是插入
创建一个p节点用于存放文字
document.createElement();
可以用于创建一个元素节点对象,
它需要一个标签名作为参数,将会根据该标签名创建元素节点对象,
并将创建好的对象作为返回值返回
步骤
var p = document.createElement("p");
创建文本节点并且添加到p标签下
document.createTextNode();
可以用来创建一个文本节点对象
需要一个文本内容作为参数,将会根据该内容创建文本节点,并将新的节点返回
var text = document.createTextNode("极品飞车");
将文本节点成为p标签的子节点
父节点.appendChild(子节点)
向一个父节,点中添加一个新的子节点
用法:父节点.appendChild(子节点);
p.appendChild(text);
将极品飞车添加到我们的标签中
var game = document.getElementById('game');
city.appendChild(p);
最终结果??
未添加之前

代码
// 创建文本节点的载体
var p = document.createElement('p');
// 创建文本节点
var text = document.createTextNode("极品飞车");
// 将文本节点添加到载体中
p.appendChild(text);
// 将载体添加到列表中,这样才能在页面中显示
var gamelist = document.getElementById('game');
gamelist.appendChild(p);
点击第一个按钮

页面的变化

把新创建的节点添加到某个元素前面
默认只展示不同的改动,其他更多的改动自行看图,防止文章篇幅过长
使用函数 `insertBefore()`
可以在指定的子节点前面插入新的子节点
语法:
父节点.insertBefore(插入的节点,被插队的节点);
var six = document.getElementById('six');
gamelist.insertBefore(p,six);
最终结果??


可以看到,我们的极品飞车加在了six前面,如果我们调换six的顺序,那么他只会加在six的前面
使用新子节点替换旧子节点
默认只展示不同的改动,其他更多的改动自行看图,防止文章篇幅过长
使用函数 `replaceChild()`
可以在指定的子节点前面插入新的子节点
语法:
父节点.replaceChild(新的节点,被替换的节点);
gamelist.replaceChild(p,six)
最终结果??

没有点击之前

点击之后

删除子节点
默认只展示不同的改动,其他更多的改动自行看图,防止文章篇幅过长
使用函数`removeChild()`
可以删除指定父节点下的子节点
语法:
父节点.removeChild(子节点名字);
gamelist.removeChild(six);
最终结果??
未点击之前

代码

点此之后

获取元素父节点
有一些情况下,我们不知道子节点的父节点,或者懒得去找,这个时候就可以使用自带的函数进行查找
parentNode
可以找到指定子节点的父节点
语法:
子节点.parentNode
list = six.parentNode;
读取元素内部的HTML代码
使用innerHTML就可以读取节点内文章的内容
innerHTML
可以获取两个标签中间的文字,例如我是中间的文字
语法:
p.innerHTML
six.innerHTML
最终结果
代码片段

输出结果

修改元素内的HTML内容
和读取一样,唯一不同的地方就在于,这个时候要给innerHTML重新赋值
p.innerHTML = "新的值"
最终结果
代码片段

未点击之前

点击之后

使用innerHTML简化我们添加元素的流程
未添加之前

代码片段

点击之后
