文档对象模型(创建,添加,删除,替换,查找,获取)
DOM树:
浏览器在解析html文档的时候,为了让他们的层次更明显,将html解析成DOM树的形式
页面中所有的内容组成了DOM树(DOM树是由节点组成的)
节点:页面当中所有的内容都可以称之为节点(元素节点,文本节点,注释节点....)
获取元素
从元素中获取到的都是字符串,没有内容获取到的是空字符串
根据ID选择器获取元素
getElementById( “ID选择器名”)
作用:使用getElementByID(“ID”)方法可以获取带有ID的元素对象。
语法:var element = doucment.getElementById(id);
参数:参数ID是大小写敏感的字符串
返回值:返回的是一个元素对象(object对象类型)
注意点:getElementByID()方法必须要在ID后面,不能写在ID之前
根据标签名获取元素
getElementsByTagName( “标签名”)
作用:使用getElementsByTagName()方法可以返回带有指定标签名的对象的
集合
返回值:元素对象的集合,以伪数组的形式存储的。
得到的元素是动态的。
根据类名获取某些元素
getElementsByClassName("类名");
作用:使用getElementByClassName("类名") 可以获取类名标签的对象集合
返回值:
元素对象的集合,获取不到返回空数组
调用时切忌,一定要加上索引,否则无效 nav【0】;
document.querySelector("选择器")
作用:根据指定选择器返回第一个元素对象;
返回值:元素对象;
注意:参数:假如要取类选择器就要标明.box,后面的同理 #box,
假如有同名选择器,只能得到第一个
document.querySelectorAll("选择器");
作用:根据查指定选择器返回
返回值:返回所有元素对象的集合。
参数:规则同上。
getElementsByTagNamen要比querySelectorAll兼容性好
获取body元素
document.body;直接打印输出就可以;
更改body元素背景图时注意:
假如时从另一个元素获取的地址书写样式:document.body.style.backgroundImag = ("url(" + this.src + ")");
获取html元素:
document.documentElement; 直接打印输出就可以
普通的操作元素获取元素只能获取到行内的样式,内嵌、外链的样式获取不到,所以就有了获取经过浏览器渲染的样式。
获取浏览器渲染的样式:
这个方法既可以获取行内样式,也可以获取内部外链的样式,一般情况下不用这个方法获取行内样式
基本语法:getComputedStyle(元素对象).样式属性
注意点:通过getComputedStyle方法只能获取样式,不能去更改样式
兼容性不太好,ie8及以下的不兼容
用法:var top = getComputedStyle(div).top ;
假如说行内样式和内嵌样式中有相同的属性,最后获取到的是行内的样式。假如只有行内样式或是内嵌样式,存在那个就能获取到哪个