DOM操作整理
DOM获取
1. 直接获取
document.getElementById("box_id") 通过ID获取
document.getElementsByName("myInput") 通过节点name,返回相同name的数组
document.getElementsByTagName(tagName) 查找标签名 (返回:标签数组) 由上至下子元素也包含
document.getElementsByClassName("box_class") 查找类名 (返回:标签数组) IE 5,6,7,8 中无效
2.获取父节点
(调用者).parentNode
3.获取单个子节点
第一个子节点: 父节点.firstElementChild || 父节点.firstChild firstChild:调用者是父节点 IE678中指第一个子元素标签在火狐谷歌IE9+以后都指的是第一个节点(包括空文档和换行节点) firstElementChild: 在火狐谷歌IE9都指的第一个元素节点。
最后一个子节点: 父节点.lastElementChild|| 父节点.lastChild lastChild: IE678中指最后一个子元素节点(标签)。在火狐谷歌IE9+以后都指的是最后一个节点(包括空文档和换行节点) lastElementChild: 在火狐谷歌IE9都指的最后一个元素节点。
4.获取所有子节点
父节点.childNodes 标准属性 获取所有节点包括HTML节点,所有属性,文本节点 火狐 谷歌等高本版会把换行也看做是子节点
父节点.children 非标准属性 但是几乎所有浏览器都支持 但不返回文本节点 。(使用较多)
5.获取兄弟节点
下一个兄弟节点: (调用者).nextElementSibling || (调用者).nextSibling nextSibling: 在IE678中指下一个元素节点(标签)。在火狐谷歌IE9+以后都指的是下一个节点(包括空文档和换行节点) nextElementSibling: 在火狐谷歌IE9都指的是下一个元素节点。
前一个兄弟节点: (调用者).previousElementSibling|| (调用者).previousSibling previousSibling:IE678中指前一个元素标签 在火狐谷歌IE9+以后都指的是前一个节点(包括空文档和换行节点) previousElementSibling: 在火狐谷歌IE9都指的是前一个元素节点。 总结:在IE678中用previousSibling,在火狐谷歌IE9+以后用previousElementSibling。
DOM操作
1.创建节点
新的标签(节点) = document.createElement("标签名"); var createDiv = document.createElement("div");
2.插入节点:
插入到最后:父节点.appendChild(新节点); boxId.appendChild(createDiv);
插入到指定节点之前:父节点.insertBefore(新节点,指定节点)在指定节点前插入; boxId.insertBefore(createDiv,bqArr[1]);
3.删除节点:
知道父节点:父节点.removeChild(子节点);必须指定要删除的子节点 box_id.removeChild();
不知道父节点:node.parentNode.removeChild(box_id_c); bqArr[1].parentNode.removeChild(bqArr[1]);
4.复制节点:
oldNode.cloneNode(true)复制后需要重新插入 才有效果 var copyNode = bqArr[1].cloneNode(true); boxId.appendChild(copyNode); console.log(bqArr[0]);
5.节点属性:
// 获取:getAttribute(名称) // 设置:setAttribute(名称, 值) // 删除:removeAttribute(名称)
//nodeType //nodeName 节点名称
DOM操作整理的更多相关文章
- js的DOM操作整理(整理)
js的DOM操作整理(整理) 一.总结 一句话总结: dom操作有用原生js的dom操作,也可以用对js封装过的jquery等插件来更加方便的进行dom操作 1.dom是什么? 对于JavaScrip ...
- javascript 常用DOM操作整理
.选取了DOM操作中实用并常用的部分,省略了实用但有明显兼容性的部分2.DOM属性和方法的类型归属可能并不完全准确3.某些一般兼容性和特点做了标识(主要是ie8-9上下) 节点类型 节点类型 节点值 ...
- js的dom操作(整理)(转)
js的dom操作整理(整理)(转) 一.总结 一句话总结: dom操作有用原生js的dom操作,也可以用对js封装过的jquery等插件来来更加方便的进行dom操作 1.dom是什么? 对于JavaS ...
- DOM操作指令整理
DOM操作指令整理: (1) 创建新节点: createDocumentFragment() 创建一个DOM片段 creatElement() 创建一个具体的元素 creatTextNode() 创建 ...
- 课堂所讲整理:HTML--7JavaScript的DOM操作
1.DOM的基本概念 DOM是文档对象模型,这种模型为树模型:文档是指标签文档:对象是指文档中每个元素:模型是指抽象化的东西. 2.Window对象操作 一.属性和方法: 属性(值或者子对象): op ...
- 从DOM操作看Vue&React的前端组件化,顺带补齐React的demo
前言 接上文:谈谈我对前端组件化中“组件”的理解,顺带写个Vue与React的demo 上次写完博客后,有朋友反应第一内容有点深,看着迷迷糊糊:第二是感觉没什么使用场景,太过业务化,还不如直接写Vue ...
- 为什么DOM操作很慢
转自:http://kb.cnblogs.com/page/534571/ 一直都听说DOM很慢,要尽量少的去操作DOM,于是就想进一步去探究下为什么大家都会这样说,在网上学习了一些资料,这边整理出来 ...
- js常用DOM操作
在博客园看到了苏夏写的常用DOM整理文章,地址:http://www.cnblogs.com/cabbagen/p/4579412.html,然后抽时间都试了一下这些常用的DOM操作.在这里记录一下. ...
- 为什么说DOM操作很慢
转自http://www.cnblogs.com/yuzhongwusan/articles/5275933.html 一直都听说DOM很慢,要尽量少的去操作DOM,于是就想进一步去探究下为什么大 ...
随机推荐
- 一台服务部署多个tomcat注意事项
第一步 添加tomcat环境变量 # vim /etc/profile加入下代码 # TOMCAT ATALINA_BASE=/usr/local/tomcat8CATALINA_HOME=/usr ...
- counter 计数器
包含了两个属性和一个方法: 1. counter-reset 2. counter-increment 3. counter()/counters() counter-reset(主要作用就是给计 ...
- 安装MongoDB启动时报错‘发生系统错误2’的解决办法
安装数据库mongodb启动时报"发生系统错误2". 这个问题是如果你之前已经装过一次,并且两次安装目录不同,就绝对会碰到的,因为你之前安装的路径已经在注册表中生成了,并没有随着你 ...
- Android-Async-Http 特性简单分析
如下是官方文档描述此库的特点: All requests are made outside of your app’s main UI thread, but any callback logic w ...
- java 中 针对数组进行的工具类
1.遍历数组的方法: public static void printfArray(int[] arr) 2. 获取数组中最大值: public static int getMax(int[] ar ...
- Scrum Meeting Alpha - 1 (团队任务分解)
团队任务分解 Alpha阶段项目目标 实现一个博客园班级博客的Android 客户端: 实现班级博客的常用功能(不包括投票.公告.校区) 有一个较为简洁美观.操作方便的界面 添加消息提醒功能. 任务拆 ...
- 如何将一个div水平垂直居中?4种方法做推荐
方案一: div绝对定位水平垂直居中[margin:auto实现绝对定位元素的居中], 兼容性:,IE7及之前版本不支持 div{ width: 200px; height: 200px; backg ...
- 使用.net连接domino的尝试
导入包含Domino命名空间的dll: } 这里需要提到的是dynamic cast 运行期绑定的代码,需要做类型转化.
- CodeRush Xpress的菜单在VS2008SP1中不显示的解决方法
将HKEY_LOCAL_MACHINE\SOFTWARE\Developer Express\CodeRush for VS\9.1中的HideMenu设置为0.若HideMenu不存在就创建个DWO ...
- WPF 完美截图 <一>
最近比较懒,一直没继续,此处省略一万字,下面开始正题. 简单介绍下截图的思路: 核心是利用 public CroppedBitmap(BitmapSource source, Int32Rect so ...