DOM学习笔记

DOM学习笔记

1.DOM结构

树形结构

2.增加操作

html:id为box的div标签

x = document.createElement(“”); //创建标签

x.innerHTML = “”; //给x赋值

box.appendChile(x); //将x放在指定位置,拼接节点

box.insertBefore(新标签,旧标签); //需获取旧标签然后创建新标签并赋值

x.setAttribute(“myname”,“x1”); //将x标签的myname属性设置为x1

通过setAttribute设置的自定义属性,点语法是不能调用的。

x.getAttribute(“myname”); //获取myname属性的值

var a = box.clone(true); //true表示复制时包含box的子标签,false则不

3.删除操作

先获取标签,再用父级.removeChild(获取后赋值的变量); //删除子节点

removeAttributeNode();//删除属性节点

4.修改操作

replaceChild(新标签,旧标签); //替换子节点

setAttribute(); //修改属性值

5.查找操作

5.1 getElementById()

通过id获取元素,返回匹配元素。

5.2 getElementsByTagName()

通过标签名获取元素,返回类数组集合。

5.3 getElementsByClassName()

通过class获取元素,返回类数组集合。ie6、ie7不适用

5.4 getElementsByName()

通过name名获取元素(表单常用),返回类数组集合

5.5 querySelector()

新的es6标准,通过css选择器获取元素,返回匹配元素

5.6 querySelectorAll()

新的es6标准,通过css选择器获取元素,返回类数组集合

5.7 获取下一个兄弟节点

(1) nextSibling

  • 有兼容问题,ie9以上或有些浏览器会将后面的换行部分作为节点进行处理。
  • 可以使用nodeType查看节点类型,返回值:元素节点(1)、属性节点(2)、文本节点(3)、注释(8)。

(2) nextElementSibling

可以忽略文档节点,只获取元素节点,但是ie6、7、8不认。

5.8 获取上一个兄弟节点

(1) previousSibling

(2) previousElementSibling

用法与上一样

5.9 获取子节点

(1) childNodes:会获取非元素类型的子节点

(2) children:获取元素字节点,无兼容问题,推荐使用

5.9.1 第一个字节点

(1) firstChild:ie6、7、8无问题、现代浏览器有问题

(2) firstElementChild:ie6、7、8不兼容

5.9.2 最后一个字节点

(1) lastChild

(2) lastElementChild

问题同上

5.10 获取父级节点

parentNode

6.获取节点后的操作

6.1通过点语法调用标签属性

6.2通过style属性控制样式

6.3通过classList控制样式

(1) add(class1,class2…) 添加类名

(2) remove(class1,class2…) 删除类名

(3) replace(oldClass,newClass) 替换类名

(4) contains(class) 是否包含某个类名,返回布尔值

(3) toggle(class,true/false) 如果类名存在就删除,不存在就添加,true强制添加,false强制删除

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值