DOM简介及节点、属性、查找节点的方法
DOM(Document Object Modle) 操作文档的编程接口
DOM定义了表示和修改文档的方法,不能修改css样式表,在js中使用DOM方法改变元素的css样式,实质上是在元素上添加行间样式。
DOM对象就是宿主对象,用来操作HTML和xml功能对象的集合。 xml——>xhtml——>html4.0——>html5
HTML和xml的区别:除了xml可以自定义标签外基本上没区别,xml被json替代了。
document,单独写的时候,它代表整个文档,隐式的写在html标签的上一层,html只是文档中的根标签。
注意点:BOM、DOM成组的东西都是类数组,而不是数组。
获取元素的方法:
getElementById();
在IE8以下的浏览器不区分id值得大小写,并且匹配元素的name的属性值。由于后台会修改id值,所以尽量不用或少用id。
getElementsByTagName();标签名,所有浏览器都支持
getElementsByClassName(); IE8及其以下得浏览器不支持
getElementsByName(); 在旧版本中,只有能提交请求的标签的name才生效(form、表单元素、img、iframe)
document.querySelector(); css选择器,IE7及以下不兼容,并且不具有实时性。
document.querySelectAll();
节点类型:
元素节点 1
属性节点 2
文本(text)节点 3 // 文本、空格、回车等都是文本节点
注释(comment)节点 8
document节点 9
documentfragment 11
遍历节点数:
parentNode 子节点的父节点,最终的parentNode节点是document节点。
childNodes 父节点的所有子节点,元素节点、注释节点、文本节点
firstChild 第一个子节点
lastChild 最后一个子节点
nextSibling 下一个兄弟节点
previousSibling 前一个兄弟节点
遍历元素节点数:(除了children节点,其他的都是IE9及以下不兼容)
parentElement 元素的父元素节点,最终的父元素节点是html元素,document是自成节点。
children 父元素下的元素子节点。
node.childElementCount === node.children.length 当前子节点的元素子节点个数。用children.length。
firstElementChild 第一个元素子节点
lastElementChild 最后一个元素子节点
nextElementSibling、previousElemnetSibling
节点的四个属性:
nodeName 除了元素节点,返回的结果前面都有一个‘#’,而元素节点返回大写形式的标签名,类型都为只读。
nodeValue 只用于文本节点和注释节点,可读写。
nodeType 返回数字,该数字代表对应的节点类型。只读
attributes 元素节点的属性集合。
node.hasChildNodes()方法,判断父节点里面是否有子节点,返回结果为布尔值。
DOM简介及节点、属性、查找节点的方法的更多相关文章
- python 3 属性查找与绑定方法
1.属性查找 类有两种属性:数据属性和函数属性 (1)类的数据属性是所有对象共享的 #类的数据属性是所有对象共享的,id都一样 class OldboyStudent: school='oldboy' ...
- python面向编程:类继承、继承案例、单继承下属性查找、super方法
一.类的继承 二.基于继承解决类与类的代码冗余问题 三.在单继承背景下属性的查找 四.super的方法 一.类的继承 1.什么是继承? 在程序中继承是一种新建子类的方法的方式,新创建的类成为子类\派生 ...
- js 创建节点 以及 节点属性 删除节点
case 'copy': var B1 = document.getElementById("B1"); //获得B1下的html文本 var copy_dom = documen ...
- JS获取节点属性个数及值得方法
var ex = node; ; for (var j in ex) { alert("" + myIndex + ".(<font color='blue'> ...
- (一)DOM 常用操作 —— “查找”节点
在 DOM 树中,如果想要操作一个节点,那么首先要"查找"到这个节点.查找节点的方法由 Document 接口定义,而该接口由 JavaScript 中的 document 对象实 ...
- 使用DOM解析XML文件,、读取xml文件、保存xml、增加节点、修改节点属性、删除节点
使用的xml文件 <?xml version="1.0" encoding="GB2312" ?> <PhoneInfo> <Br ...
- Selenium 查找节点
Selenium 可以驱动浏览器完成各种操作,比如填充表单.模拟点击等.比如,我们想要完成向某个输入框输入文字的操作,总需要知道这个输入框在哪里吧?而 Selenium 提供了一系列查找节点的方法,我 ...
- python描述符和属性查找
python描述符 定义 一般说来,描述符是一种访问对象属性时候的绑定行为,如果这个对象属性定义了__get__(),__set__(), and __delete__()一种或者几种,那么就称之为描 ...
- DOM操作 ——如何添加、移除、移动、复制、创建和查找节点等。
DOM操作 --如何添加.移除.移动.复制.创建和查找节点等. (1)创建新节点 createDocumentFragment() //创建一个DOM片段 createElement() //创建一个 ...
随机推荐
- 【剑指offer】数组中仅仅出现一次的数字(1)
转载请注明出处:http://blog.csdn.net/ns_code/article/details/27649027 题目描写叙述: 一个整型数组里除了两个数字之外.其它的数字都出现了两次. 请 ...
- 生成 hibernate 映射文件和实体类
创建web工程,使用Hibernate的时候,在工程里一个一个创建实体类太麻烦,浪费时间,现在教大家如何用MyEclipse自动生成Hibernate映射文件及实体类 方法/步骤 创建数据库,创建 ...
- mysql查询表的字符集
mysql查询表的字符集 SHOW CREATE TABLE user;
- validationEngine验证的使用
改校验的方法功能很强大,具体查看api http://code.ciaoca.com/jquery/validation_engine/ 效果:
- spark安装和登陆配置
1.下载安装包: http://www.igniterealtime.org/downloads/index.jsp 2.点击安装后打开登陆界面: 2.点击“高级”,设置相关配置: 3.点击“登陆”后 ...
- 就是要第一个出场的albus 【BZOJ】 线性基
就是我代码里读入之后的那一部分. 1.(一下a[]为原数组 a'[]为线性基) 线性基 中的a'[i]其实 是 原来的a[]中的某个子集(2^n个子集中的某个) 异或出来的 可能会有其他的子集与它异 ...
- python名片管理系统
1.代码: (1)主程序 #!/usr/bin/env python # -*- coding: UTF-8 -*- import cards_tools # 无限循环,由用户主动决定什么时候退出循环 ...
- Ubuntu12.04中新的快捷键(转载)
转自:http://blog.51osos.com/linuxnews/ubuntu12-04%E4%B8%AD%E6%96%B0%E7%9A%84%E5%BF%AB%E6%8D%B7%E9%94%A ...
- HDU3092:Least common multiple(素数筛选+完全背包)
题意 给出\(n\)和\(m\),将\(n\)拆成任意个数,求它们的最大的\(lcm\) 分析 1.可以证明\(n=p1^{s1}*p2^{s2}*...*pn^{sn}\)时\(lcm\)最大(其中 ...
- 洛谷 P4552 [Poetize6] IncDec Sequence【差分+脑洞】
一看区间操作,很容易想到差分 所以就是先差分,然后为了保证最小步数,把政府差分抵消,也就相当于原数组区间加减 第二问,因为差分数组抵消之后不为0就需要使用n+1的虚拟位置,而这个的值其实没有,所以我们 ...