1. DOM 简介
1.1什么是DOM
1.2 DOM 树
2. 获取元素
2.1 获取页面元素
(1) 根据ID 获取
(2) 根据标签名获取
获取单个元素时:
要么是获取文档中全部的该元素,再通过索引进行选取需要的元素;
要么是通过id 名进行获取。
(3) HTML5新增获取元素方法
根据类名获取
返回选择器中第一个元素
返回指定选择器的所有对象
2.2 获取特殊元素
- 获取body 标签
- 获取html 元素
3. 事件基础
3.1 事件
3.2 事件三要素
3.3 执行事件的步骤
3.4 常见的鼠标事件
4. 操作元素(DOM核心)
4.1 改变元素内容
添加注册事件:
未添加注册事件:
innerText 和 innnerHTML区别
4.2 常见元素的操作
修改元素属性
案例:分时显示不同图片,显示不同问候语
4.3 修改表单元素
案例:仿京东显示密码
此处利用了一个算法:
(通常是一个按钮要实现两种情况的功能)
<style>
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
.box {
position: relative;
margin: 50px auto;
padding: auto;
width: 800px;
height: 50px;
border-bottom: 1px solid #222;
}
.box input {
width: 700px;
height: 100%;
border: 0;
outline: 0;
font-size: 20px;
}
.box .eye {
position: absolute;
top: 14px;
right: 30px;
}
</style>
</head>
<body>
<div class="box">
<label for="">
<div class="eye" id="eye">≶</div>
</label>
<input type="password" name="" id="pwd">
</div>
<script>
var eye = document.getElementById('eye');
var pwd = document.getElementById('pwd');
var flag = 0;
eye.onclick = function() {
if(flag == 0) {
pwd.type = 'text';
eye.innerHTML = '>';
flag = 1;
}else {
pwd.type = 'password';
eye.innerHTML = '≶';
flag = 0;
}
}
</script>
4.4 样式属性操作
(1) 行内样式操作
适用于修改样式比较少的情况!
案例–循环精灵图
案例–显示隐藏文本框内容
(2) 类名样式操作
适用于修改样式比较多的情况!
注意:className 会直接更改元素的类名,回复该原先的类名。
想要保留原来的类名,可以按照下面的方法操作:
案例–密码框格式提示错误信息
4.5 排他思想
案例–换肤
使用img 和背景bacground 插入图片有什么不同?
案例–表格隔行变色
案例–表单全选取消全选
4.6 自定义属性操作
(1) 获取属性值
(2) 设置属性值
注意:
class 名称的修改:
第一种方法中是element.className = ’ ';
在第二种方法中是element.setAttribute(‘class’,‘name’)。
案例–tab栏切换(重点案例)
4.7 H5自定义属性
- 设置自定义属性
- 获取H5自定义属性
注意:
getAttribute() 无兼容性;
dateset 是ie11才支持,有兼容性。