DOM--节点操作
来源:互联网 发布:成都地铁 知乎 编辑:程序博客网 时间:2024/05/18 02:12
好久都没写博客啦 今天把笔记都搬上来 嘻嘻
1.排他思想
//tab栏切换
2.dom节点
js有三部分组成
ECMAscript DOM BOM
核心(ECMAScript)欧洲计算机制造商协会
描述了JS的语法和基本对象。
文档对象模型(DOM)
处理网页内容的方法和接口
浏览器对象模型(BOM)
与浏览器交互的方法和接口
window.alert() 很大的兼容问题
1、DOM 定义
DOM 为文档提供了结构化表示,并定义了如何通过脚本来访问文档结构。
目的其实就是为了能让js操作html元素而制定的一个规范。
DOM 树 :将网页划分为这样的结构
2、节点
标签 标记 元素 节点
由结构图中我们可以看到,整个文档就是一个文档节点。
而每一个HMTL标签都是一个元素节点。
标签中的文字则是文字节点。
标签的属性是属性节点。
一切都是节点……
3、访问节点
我们学过几个访问节点 :
getElementById() id 访问节点
getElementsByTagName() 标签访问节点
getElementsByClassName() 类名 有兼容性问题
主流浏览器支持 ie 67 8 不认识
怎么办? 我们自己封装自己的类 。
4、封装自己class类 笔试题 //解决兼容性问题
原理 : (核心)
我们要取出所有的盒子,利用遍历的方法 ,通过每一个盒子的className 来判断。如果相等就留下。
5、判断真假
6、父节点
父 : parentNode
<script>
varx =document.getElementById("x");
x.onclick= function () {
//父节点关掉的是它的父亲
this.parentNode.style.display= "none";
}
</script>
7、兄弟节点
nextSibling 下一个兄弟 ----ie 678
nextElementSibling -----正常浏览器
previousSibling 上一个兄弟 ----ie678
previousElementSibling -----正常浏览器
我们想要兼容 我们可以写 || 或者
8、孩子节点
1、
firstChild 第一个孩子 ie678
firstElementChild 第一个孩子 正常浏览器
兼容性写法
var one.firstElementChild || one.firstChild;
lastChild
lastElementChild 少用
2、
childNodes 选出全部的孩子
childNodes:它是标准属性,它返回指定元素的子元素集合,包括HTML节点,所有属性,文本节点
火狐 谷歌等高本版会把换行也看做是子节点
利用 nodeType == 1 时才是元素节点 来获取元素节点 标签 元素
children 重要 选取所有的孩子 (只有元素节点)
ie 678 注释节点也会被识别成孩子 这个要避免开。
设置节点属性
1)获取节点属性
getAttribute(属性) 获取属性
通过这个方法,可以得到 某些元素的 某些属性 。
2)设置节点属性
setAttribute(“属性”,”值”);
var box = document.getElementById("box");
alert(box.getAttribute("title"));
box.setAttribute("class","two");
box.removeAttribute("title”);
节点操作--案例:微博发布
思路:1:获取对象,创建一个ul放在盒子中
2:判断输入的内容,是否为空,空就做alert提示
3:判断是第一次输入就把内容放在ul后面,非第一次就放在元素的前面
4:做a标签的点击删除
阅读全文
0 0
- DOM节点操作
- js操作dom节点
- dom节点操作1
- Jquery操作DOM节点
- dom 节点操作2
- DOM节点的操作
- js操作DOM节点
- jquery dom 节点操作
- DOM节点操作
- DOM操作-包裹节点
- js操作dom节点
- JS操作DOM节点
- js操作dom节点
- DOM节点操作
- jQuery DOM节点操作
- DOM节点操作
- JavaScript__JavaScript操作 DOM 节点
- DOM节点操作
- 点击新闻条目跳转viewpager+photoview显示图片
- 【python图像处理】gif动态图的解析与合成
- [003-u-boot-Exynos4412] 移植SPL阶段
- Admiral HDU
- HDU6172-Array Challenge
- DOM--节点操作
- 月报统计:根据数据库表字段并按月查询某列的总和(sum)
- 剑指offer——扑克牌顺子
- (八)Spring Boot整合ActiveMQ
- RT3070wifi+linux(TMS320DM368)移植
- mysql笔记七——Java实现excel表的读写(导出mysql数据库的所有表到excel表)
- 使用BMfont制作含有"中文图片"的.fnt格式字体合图
- H
- Android Studio 3.0预览版本 Error:Gradle: failed to create directory 解决方案