1.DOM --> document
2.浏览器: IE(IE9 基本都支持) FF (DOM支持99%) Chrome、safari(60%左右)
3.DOM节点
子节点(childNodes数组)、父节点
子节点存在的问题:部分B会显示文本节点和元素节点的和
文本节点是没有style属性的
解决办法:使用nodeType判断节点的类型 = =>3:文本节点 ====>1:元素节点
children只包含元素节点不包含文本节点
例如:<ul>
<li></li>
<li></li>
</ul>
alert(ul.childNodes.length);
childNodes部分B会显示5个子节点,children显示2个
parentNode 父节点
offsetParent 获取元素用于定位的父级
4.firstChild lastChild 高级浏览器也有类似于childNodes的问题 使用firstElementChild解决
nextSibling previousSibling 兄弟关系
5.操作属性的方法
方式一:oDiv.style.display = 'none';
方式二:oDiv.style['display'] = 'none'
方式三:DOM方式:oDiv.setAttribute(名称,值);
getAttribute(名称):获取
removeAttrite(名称):删除
6.用className选择元素
if(ali[i].className == 'box')
{ ...... }
封装方法,方便以后直接调用
function getByClass (oParent,sClass) {
var aResult = [];
var aEle = oParent.getElementsByTagName('*');
for(var i = 0;i<aEle.length;i++)
{
if(aEle[i].className == sClass)
{
aResult.push(aEle[i]);
}
}
return aResult;
}