JavaScript 实现HTML DOM增删改查操作的常见方法详解


Posted in Javascript onJanuary 04, 2020

本文实例讲述了JavaScript 实现HTML DOM增删改查操作的常见方法。分享给大家供大家参考,具体如下:

首先 js 可以修改HTML中的所有元素和属性,它还可以改变CSS样式,并且可以监听到所有事件并作出响应,这篇笔记呢 主要记录如何对HTML元素进行增删改查。

1 查找DOM

第一种方式是我们最常用的:通过ID查找:

<!DOCTYPE html>
<html>
<head>
  <title>learn javascript</title>
</head>
<body>
  <p id="demo">你能找到我么?</p>
  <button onclick="changeText()">点击改变文本</button>
</body>
{{--js--}}
<script>
  function changeText(){
    document.getElementById("demo").innerHTML = "ok";
  }
</script>
</html>

注意:当我们写HTML的时候尽量保证ID不重复。

第二种方法:通过标签名查找

<!DOCTYPE html>
<html>
<head>
  <title>learn javascript</title>
</head>
<body>
  <div id="demo">
    <p>hi man</p>
  </div>
  <button onclick="changeText()">点击改变文本</button>
</body>
{{--js--}}
<script>
  function changeText(){
    var element = document.getElementById("demo");
    var p = element.getElementsByTagName("p");
    p[0].innerHTML = "yo";
  }
</script>
</html>

↑ 我们取到了ID为demo的div,然后在div中有个p元素 没有ID属性,我们就可以通过tagname来找到它。

第三种方法:通过class来查找

<!DOCTYPE html>
<html>
<head>
  <title>learn javascript</title>
</head>
<body>
  <div class="demo">
    <p>hi man</p>
  </div>
  <button onclick="changeText()">点击改变文本</button>
</body>
{{--js--}}
<script>
  function changeText(){
    var element = document.getElementsByClassName("demo")[0];
    var p = element.getElementsByTagName("p");
    p[0].innerHTML = "yo";
  }
</script>
</html>

2 删除DOM

<!DOCTYPE html>
<html>
<head>
  <title>learn javascript</title>
</head>
<body>
  <div id="div1">
    <p id="p1">hi man</p>
    <p id="p2">hello</p>
  </div>
  <button onclick="changeText()">点击改变文本</button>
</body>
{{--js--}}
<script>
  function changeText(){
    var div1 = document.getElementById("div1");
    var p2 = document.getElementById("p2");
    div1.removeChild(p2);
  }
</script>
</html>

3 新增DOM

<!DOCTYPE html>
<html>
<head>
  <title>learn javascript</title>
</head>
<body>
  <div id="div1">
    <p id="p1">hi man</p>
    <p id="p2">hello</p>
  </div>
  <button onclick="changeText()">点击改变文本</button>
</body>
{{--js--}}
<script>
  function changeText(){
    // 创建P标签
    var p = document.createElement("p");
    // 创建文本节点
    var node = document.createTextNode("新的P标签");
    // 创建属性
    var attr = document.createAttribute("class");
    attr.value = "class p";
    // p标签中添加文本节点
    p.appendChild(node);
    // p标签中添加属性
    p.setAttributeNode(attr);
    var div = document.getElementById("div1");
    // 添加p标签
    div.appendChild(p);
  }
</script>
</html>

4 修改DOM

4.1 修改DOM的内容

<!DOCTYPE html>
<html>
<head>
  <title>learn javascript</title>
</head>
<body>
  <div id="div1">
    <p id="p1">hi man</p>
    <p id="p2">hello</p>
  </div>
  <button onclick="changeText()">点击改变文本</button>
</body>
{{--js--}}
<script>
  function changeText(){
    var element = document.getElementById("p1");
    element.innerHTML = "更改内容";
  }
</script>
</html>

4.2 修改DOM的属性

<!DOCTYPE html>
<html>
<head>
  <title>learn javascript</title>
</head>
<body>
  <a href="https://www.baidu.com" rel="external nofollow" id="link">链接</a>
</body>
{{--js--}}
<script>
  var element = document.getElementById("link");
  element.href = "https://www.google.com";
</script>
</html>

4.3 修改DOM的CSS样式

<!DOCTYPE html>
<html>
<head>
  <title>learn javascript</title>
</head>
<body>
  <p id="p1">文本</p>
</body>
{{--js--}}
<script>
  var element = document.getElementById("p1");
  element.style.color = "red";
</script>
</html>

感兴趣的朋友可以使用在线HTML/CSS/JavaScript代码运行工具:http://tools.3water.com/code/HtmlJsRun测试上述代码运行效果。

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
Jquery 切换不同图片示例代码
Dec 05 Javascript
jQuery中 attr() 方法使用小结
May 03 Javascript
js实现鼠标滑过文字链接色彩变化的效果
May 06 Javascript
JavaScript中Cookies的相关使用教程
Jun 04 Javascript
js如何实现点击标签文字,文字在文本框出现
Aug 05 Javascript
javascript中 try catch用法
Aug 16 Javascript
微信公众号开发 实现点击返回按钮就返回到聊天界面
Dec 15 Javascript
详解angular用$sce服务来过滤HTML标签
Apr 11 Javascript
微信小程序 页面跳转事件绑定的实例详解
Sep 20 Javascript
VUE + UEditor 单图片跨域上传功能的实现方法
Feb 08 Javascript
详解vue中v-on事件监听指令的基本用法
Jul 22 Javascript
react-native 实现购物车滑动删除效果的示例代码
Jan 15 Javascript
Angular8 实现table表格表头固定效果
Jan 03 #Javascript
uni-app 支持多端第三方地图定位的方法
Jan 03 #Javascript
Vue 实现登录界面验证码功能
Jan 03 #Javascript
JS实现扫码枪扫描二维码功能
Jan 03 #Javascript
file-loader打包图片文件时路径错误输出为[object-module]的解决方法
Jan 03 #Javascript
uni-app如何实现增量更新功能
Jan 03 #Javascript
JS实现简单日历特效
Jan 03 #Javascript
You might like
php绘制一个矩形的方法
2015/01/24 PHP
PHP中is_dir()函数使用指南
2015/05/08 PHP
超强多功能php绿色集成环境详解
2017/01/25 PHP
json数据的列循环示例
2013/09/06 Javascript
js实现遮罩层划出效果是生成div而不是显示
2014/07/29 Javascript
node.js中的buffer.slice方法使用说明
2014/12/10 Javascript
js时钟翻牌效果实现代码分享
2020/07/31 Javascript
javascript十六进制数字和ASCII字符之间的转换方法
2016/12/27 Javascript
nodejs+express实现文件上传下载管理网站
2017/03/15 NodeJs
详解Javascript中new()到底做了些什么?
2018/03/29 Javascript
vue中touch和click共存的解决方式
2020/07/28 Javascript
ant design vue中日期选择框混合时间选择器的用法说明
2020/10/27 Javascript
JavaScript十大取整方法实例教程
2020/12/03 Javascript
原生js实现放大镜组件
2021/01/22 Javascript
[02:25]DOTA2英雄基础教程 熊战士
2014/01/03 DOTA
[01:01:35]Optic vs paiN 2018国际邀请赛小组赛BO2 第二场 8.19
2018/08/21 DOTA
批处理与python代码混合编程的方法
2016/05/19 Python
解决python 未发现数据源名称并且未指定默认驱动程序的问题
2018/12/07 Python
Python多进程fork()函数详解
2019/02/22 Python
Python实现插入排序和选择排序的方法
2019/05/12 Python
Python 3 实现定义跨模块的全局变量和使用教程
2019/07/07 Python
在ipython notebook中使用argparse方式
2020/04/20 Python
中国汽车租赁行业头部企业:一嗨租车
2019/05/16 全球购物
马来西亚在线购物市场:PGMall.my
2019/10/13 全球购物
Tuckernuck官网:经典的美国品质服装、鞋子和配饰
2021/01/11 全球购物
SIMON MILLER官网:洛杉矶的生活方式品牌
2020/10/19 全球购物
市场营销专业毕业生自荐信
2013/11/02 职场文书
学习委员自我鉴定
2014/01/13 职场文书
大二学生学习个人自我评价
2014/01/19 职场文书
旅游个人求职信范文
2014/01/30 职场文书
物流专业专科生职业生涯规划书
2014/09/14 职场文书
2014小学二年级班主任工作总结
2014/12/05 职场文书
尼克胡哲观后感
2015/06/08 职场文书
工作证明格式范文
2015/06/15 职场文书
2016年母亲节广告语
2016/01/28 职场文书
Windows7下FTP搭建图文教程
2022/08/05 Servers