一、BOM属性的增删改

Ⅰ、获取标签document.getElementById()

Ⅱ、获取属性值

方法一:document.write(inObj.value);

方法二:document.write(inObj.getAttribute(“value”));

Ⅲ、设置 属性值

方法一:inObj.value=”hello”;

方法二:inObj.setAttribute(“value”, “Django”);

Ⅳ、添加属性document.createAttribute(“class”);

Ⅴ、删除属性inObj.removeAttribute(“name”);

<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="UTF-8">

<title>DOM 属性相关操作</title>

</head>

<body>

<input type="text" name="aaa" id="inputid" value="请输入:">

<script>

// 1、获取标签

var inObj = document.getElementById("inputid");

document.write("<br/>");

// 2、获取属性值 方法一

document.write(inObj.value);

document.write("<br/>");

// 获取属性值 方法二

document.write(inObj.getAttribute("value"));

document.write("<br/>");

// 3、设置属性值

// 方法一

// inObj.value="hello";

// document.write(inObj.value);

// document.write("<br/>");

// 方法二

// inObj.setAttribute("value", "Django");

// document.write(inObj.value);

//document.write("<br/>");

// 4、添加属性

// 创建属性节点

var attrObj = document.createAttribute("class");

// 与input标签建立联系

//inObj.appendChild(attrObj);

document.write("<br/>");

// 5、删除属性

document.write(inObj.getAttribute("name"));

inObj.removeAttribute("name");

document.write("<br/>");

document.write(inObj.getAttribute("name"));

</script>

</body>

</html>

二、DOM属性的其他常用操作

Ⅰ、标签节点

nodeName返回标签名,nodeType返回整型1,nodeValue返回null

Ⅱ、属性节点

nodeName返回属性名,nodeType返回整型2,nodeValue返回属性值

Ⅲ、文本节点

nodeName返回#text,nodeType返回整型3,nodeValue返回文本本身

<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="UTF-8">

<title>DMO 属性操作</title>

</head>

<body>

<span id="span_id"> Hello Django </span>

<br/>

<script>

/*

元素节点 /属性节点 /文本节点

nodeName: 返回标签名 /属性名 /#text

nodeType: 1 /2 /3

nodeValue: null /属性值 /文本本身

*/

// 1、标签节点

var eleObj = document.getElementById("span_id");

document.write(eleObj.nodeName);

document.write("<br/>");

document.write(eleObj.nodeType);

document.write("<br/>");

document.write(eleObj.nodeValue);

document.write("<hr/>");

// 2、属性节点

var attrObj = eleObj.getAttributeNode("id");

document.write(attrObj.nodeName);

document.write("<br/>");

document.write(attrObj.nodeType);

document.write("<br/>");

document.write(attrObj.nodeValue);

document.write("<hr/>");

// 3、文本节点

var textObj = eleObj.firstChild;

document.write(textObj.nodeName);

document.write("<br/>");

document.write(textObj.nodeType);

document.write("<br/>");

document.write(textObj.nodeValue);

</script>

</body>

</html>

三、DOM父节点与子节点

Ⅰ、已知子节点获取父节点

Ⅱ、已知父节点获取子节点

Ⅲ、获取全部子节点

Ⅳ、获取子节点的长度

<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="UTF-8">

<title>父子节点</title>

</head>

<body>

<span>Hello</span>

<ul>

<li id="li1">111</li>

<li id="li2">222</li>

<li id="li3">333</li>

<li id="li4">444</li>

</ul>

<span>World</span>

<script>

// 1、已知子节点获取父节点

var liEle = document.getElementById("li1");

var ulEle = liEle.parentNode;

// 2、已知子节点获取父节点

var ulObj = document.getElementsByTagName("ul")[0];

document.write(ulObj.firstChild);

document.write(ulObj.lastChild);

// 获取全部子节点

var childObj = ulObj.childNodes;

document.write(childObj);

// 获取长度,5个换行加4个子节点

document.write(childObj.length);

</script>

</body>

</html>

四、InnerHTML属性

Ⅰ、获取文本内容

Ⅱ、设置HTML标签

<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="UTF-8">

<title>innerHTML属性</title>

<style>

#box {

width:200px;

height:200px;

background-color: #3875d7;

}

</style>

</head>

<body>

<span id="span_id"> 123 </span>

<div id="box"> 456 </div>

<!--<table border="1" cellspacing="1" bgcolor="red" width="100px" height="100px"><tr><td>1</td></tr><tr><td>2</td></tr><tr><td>3</td></tr></table>-->

<script>

// 获取span标签对象

var spanObj = document.getElementById("span_id");

// 获取span的文本内容

document.write(spanObj.innerHTML);

// 设置 HTML 标签

var divObj = document.getElementById("box");

divObj.innerHTML = '<table border="1" cellspacing="1" bgcolor="red" width="100px" height="100px"><tr><td>1</td></tr><tr><td>2</td></tr><tr><td>3</td></tr></table>\n'

</script>

</body>

</html>

五、DOM事件

  1. 内联模式

将事件作为标签使用,可以识别JS中的代码和函数,不能做到JS和HTML标签分离

  1. 脚本模式

将事件作为属性使用,匿名函数,HTML标签与JS分离

<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="UTF-8">

<title>DOM 事件</title>

</head>

<body>

<input type="button" οnclick="func()" value="内联模式函数按钮">

<input type="button" οnclick="alert('123')" value="内联模式alert按钮">

<input type="button" id="input_1" value="脚本模式按钮1">

<input type="button" id="input_2" value="脚本模式按钮2">

<script>

// 1、内联模式

// 将事件作为标签的属性使用

// 可识别JS中的代码和函数,不能做到JS和HTML标签分离

function func(){

document.write("hello");

}

// 2、 脚本模式

// 将事件作为属性来使用,匿名函数

// 获取input标签

// HTML标签和JS分离

var input1 = document.getElementById("input_1");

// 给input标签添加单击事件

input1.onclick = function (){

document.write("input_1");

}

</script>

</body>

</html>

六、鼠标事件

①单击事件 onclick

②双击事件ondblclick

③悬浮事件 onmouseover

④失去焦点,移除鼠标 onmouseout

<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="UTF-8">

<title>鼠标事件</title>

<style>

#box{

width:100px;

height:100px;

background-color: rebeccapurple;

}

</style>

</head>

<body>

<div id="box">  </div>

<script>

// 获取元素

var divObj = document.getElementById("box");

// 添加事件

// 单击事件

divObj.onclick = function (){

alert("单机事件");

}

// 双击事件

divObj.ondblclick = function (){

alert("双击事件");

}

// 悬浮事件

divObj.onmouseover = function (){

alert("悬浮事件");

}

// 失去焦点,把鼠标移除

divObj.onmouseout = function (){

alert("失去焦点");

}

</script>

</body>

</html>

DOM属性的增删改、属性的其他操作及DOM事件相关推荐

  1. JavaWeb开发 前端语言:jQuery(二)属性操作、DOM的增删改、CSS样式操作、动画、事件操作

    JavaWeb开发 前端语言:jQuery(二) 1.jQuery的属性操作 2.jQuery练习:使用jQuery完成全选.全不选.反选和提交功能 3.DOM的增删改 3.1 DOM的增操作 3.1 ...

  2. HTML DOM节点的增删改查

    上篇博客中,我们已经初步接触了DOM基础,但是我们学习是为了能够更好地应用,今天我们就来看看DOM节点的增删改查. 不管在哪里,我们想要操作一个东西,总是应该先去获得它.那么我们怎么获得呢? HTML ...

  3. html增删改查按钮控件,HTML DOM节点的增删改查

    上篇博客中,我们已经初步接触了DOM基础,可是我们学习是为了可以更好地应用,今天我们就来看看DOM节点的增删改查. 无论在哪里,我们想要操作一个东西,总是应该先去获得它.那么我们怎么获得呢? HTML ...

  4. SpringBoot+Mysql+MDUI实现数据的增删改查和列表操作及单,多文件上传实例

    SpringBoot+Mysql+MDUI实现数据的增删改查和列表操作及单,多文件上传实例 开源地址:https://gitee.com/jfkjrym/demo.git evan原创内容!evan原 ...

  5. JAXP对XML文档进行DOM解析实现增删改

    上一节用JAXP对xml文档解析读取了其中的数据点击查看上一节内容,现在实行xml文档的增删改: xml文档: <?xml version="1.0" encoding=&q ...

  6. dom对html增删改操作,6.DOM对HTML元素的增删改操作

    节点的增删改操作 function createNode(){ //创建一个li元素 var li = document.createElement("li"); li.inner ...

  7. JDBC(实现增删改查的通用操作)

    JDBC JDBC概述 创建表以及相对应的对象(ORM) 表 对象 获取连接的方式 方式一 方式二 方式三 方式四 方式五(推荐使用) 增.删.改操作 查询操作 JDBC概述 为了使Java编写的程序 ...

  8. 记一些Python(Pymysql)建表、增删改查等基础操作(小白适用)

    1.读取sql文件创建数据表 有一个形如下图的sql文件,使用python读取文件并在数据库中创建所有的表. 很多人学习python,不知道从何学起. 很多人学习python,掌握了基本语法过后,不知 ...

  9. eggjs增删改查MySQL,nodejs操作mysql实现增删改查

    首先需要安装mysql模块:npm install mysql –save 然后创建user数据表: 接着使用nodejs对数据库进行增删改查: //引入mysql模块 var mysql = req ...

最新文章

  1. 项目的简单总结一 -- 关于对贝塞尔和shapelayer结合使用的动画特效
  2. ButterKnife源码解析
  3. 被315曝光还霸气回应“不受影响”,这家SaaS公司是真硬气还是无底线?
  4. 【Java 并发编程】线程池机制 ( 线程池状态分析 | 线程池状态转换 | RUNNING | SHUTDOWN | STOP | TIDYING | TERMINATED )
  5. 【设计干货】Facebook设计APP时的14个必考题
  6. Spark3.0发布了,代码拉过来,打个包,跑起来!| 附源码编译
  7. iphone/ipod网页开发教程及规则
  8. 网抑云了是什么意思,网抑云语录有哪些,网抑云网抑云梗表情包
  9. 各种SQL数据库的数据类型
  10. Ubuntu22.04 Python 深度学习环境配置记录
  11. 千万58招聘人员的选择值得信赖-米苏 58自动循环发帖器
  12. 写给非网工的CCNA教程(8)跨LAN的通信
  13. 基于计算机视觉的葡萄检测分级系统
  14. Unity3D发布微信小程序
  15. 基于GetData和ArcGIS的地图数字化教程
  16. 做人要知足、做事要知不足、做学问要不知足
  17. 口罩机远程监控运维解决方案
  18. Web服务器工作原理详解(基础篇)
  19. Java学完后就业方向有哪些呢?
  20. eve-ng模拟器安装在部署使用

热门文章

  1. 前缀和与差分那些不得不说的事(一维,二维)公式与图解详细解说
  2. win7 64 位系统焦点丢失解决方案
  3. win2008R2 不能访问局域网共享\局域网共享中无本机,解决办法.
  4. netty内存泄露检测
  5. 测速网宽带提速自动生效方案
  6. 英语的句号在c语言中是什么意思,英语中标点符号用法
  7. 人民日报探店联想安定门店,联想智慧零售变革现成效
  8. ROS学习记录 | 便于回顾
  9. php7的安装方法,php7 iis安装方法详解(图文)
  10. python登录教务系统_python+mysql实现教务管理系统