首先 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" 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>

JavaScript HTML DOM增删改查的更多相关文章

  1. javascript生成表格增删改查 JavaScript动态改变表格单元格内容 动态生成表格 JS获取表格任意单元格 javascript如何动态删除表格某一行

    jsp页面表格布局Html代码 <body onload="show()"> <center> <input type="text" ...

  2. 用 JS(JavaScript )实现增删改查

    JS小例题 学习内容: 需求 总结: 学习内容: 需求 用 JavaScript 实现简单增删改查 实现代码 <!DOCTYPE html PUBLIC "-//W3C//DTD HT ...

  3. javascript相关的增删改查以及this的理解

    前两天做了一个有关表单增删改查的例子,现在贴出来.主要是想好好说一下this. 下面贴一张我要做的表格效果. 就是实现简单的一个增删改查. 1.点击增加后自动增加一行: 2.点击保存当前行会将属性改成 ...

  4. JavaScript数组:增删改查、排序等

    直接上代码 // 数组应用 var peoples = ["Jack","Tom","William","Tod",&q ...

  5. JavaScript之DOM的增删改查

    JavaScript的组成: 1. ECMAScript-语法规范 2. Web APIs(浏览器提供的工具) (1).BOM (浏览器对象模型) (2).DOM (文档对象模型) 今天就来讲讲DOM ...

  6. JavaScript(JS)之Javascript对象DOM之增删改查(四)

    创建节点:var ele_a = document.createElement('a');添加节点:ele_parent.appendChild(ele_img);删除节点:ele_parent.re ...

  7. DOM节点的增删改查

    在开始展开DOM操作前,首先需要构建一棵DOM树. <!DOCTYPE html> <html lang="en"> <head> <me ...

  8. HTML DOM(二):节点的增删改查

    上一篇讲述了DOM的基本知识,从其得知,在DOM眼中,HTML的每个成分都可以看作是节点(文档节点.元素节点.文本节点.属性节点.注释节点,其中,属性节点是属于元素节点),本篇的内容就是通过DOM对这 ...

  9. 超详细的DOM操作(增删改查)

    操作DOM的核心就是增删改查 原文地址:https://jianshu.com/p/b0aa846f4dcc 目录 一.节点创建型API 1.1 createElement 1.2 createTex ...

随机推荐

  1. min-height IE6的解决方案

    selector { min-height:500px; height:auto !important; height:500px; } 因为IE6中当内容大于容器高度或宽度时,就会撑破容器.并且在同 ...

  2. http://www.360doc.com/content/12/0516/14/1671317_211422841.shtml

    http://www.360doc.com/content/12/0516/14/1671317_211422841.shtml

  3. Eclipse user library位置

    原因: 转自:http://happycoolyp.iteye.com/blog/1853135 user libraries的记录文件%eclipse_workspace%\.metadata\.p ...

  4. 微信小程序 - 更改button状态

    wxml <button class='yes-orders' style='{{status_css}}' bindtap='clickExpress'> {{statusOrders} ...

  5. JSON 对象

    JSON 对象 对象语法 { "name":"runoob", "alexa":10000, "site":null } ...

  6. ubuntu ss 搭建(tizi_服务端

    #更新源 apt-get update #安装python和pip apt-get install python-gevent python pip #安装ss pip install shadows ...

  7. js 队列和事件循环

    1.示例代码 <!DOCTYPE html> <html lang="zh"> <head> <meta charset="UT ...

  8. 《深入理解jvm》笔记---第七章

    虚拟机类载入机制 1. 类的生命周期: 载入.验证.准备.解析.初始化.使用.卸载七个阶段.当中验证.准备.解析三个阶段统称为连接. 当中,解析的阶段的时机并不一定. 2. Java类载入的时机: J ...

  9. centos7单机版安装hbase

    1.首先安装jdk1.8 yum install java-1.8.0-openjdk* -y 2.下载hbase 地址:http://mirrors.shuosc.org/apache/hbase/ ...

  10. 【C语言天天练(二三)】errno变量

    引言: 在C编程中,errno是个必不可少的变量.特别是在网络编程中. 假设你没实用过errno,那仅仅能说明你的程序不够健壮. 为什么会使用errno呢?这是系统库设计中的一个无奈之举.他很多其它的 ...