继续学习。。
1.Dom操作节点
(1)appendChild()向childnodes列表添加一个节点
var returnNode = someNode.appendChild(newNode);
(2)insertBefore接受两个参数,要插入的节点和参照节点,如果参照节点为null,则功能和appendChild()一样
var returnNode = someNode.insertBefore(newNode,null);
(3)replaceChild接受两个参数,要插入的节点和要替换的节点
var returnNode = someNode.replacechild(newNode,someNode.firstChild);
(4)removeChild移除节点
var returnNode = someNode.removeChild(someNode.firstNode);
2.查找元素
(1)getElementById根据id查找元素
(2)getElementByTagName根据元素标签名查找元素
(3)namedItem根据name属性查找元素
(4)getElementByName根据name查找元素
(5)getElementByClassName根据class来查找元素
(6)等等。。
3.取得特性
(1)取得特性
var div = document.getElementById("id"); alert(getAttribute("id")); alert(getAttribute("class")); alert(getAttribute("name")); alert(getAttribute("title")); alert(getAttribute("lang")); alert(getAttribute("dir"));
(2)设置特性
setAttribute("id","id");
(3)删除特性
removeAttribute("class");
4.兼容模式
if(document.compatMode == "CSS1Compat"){ alert("standards mode");//标准模式 }else { alert("quirks mode");混杂模式 }
5.事件流
IE的事件流是事件冒泡流,而Netscape的事件流是事件捕获流,正好相反,由于老版本浏览器不支持,所以现在很少有人使用事件捕获流
事件处理被看做发生在事件冒泡阶段
Dom2级事件处理程序:addEventListener()和removeEventListener()
addEventListener()接受三个参数,要处理的事件名、处理程序的函数、布尔值,如果布尔值为true,则该事件会在捕获阶段被触发,如果为false,则会在冒泡阶段被触发
IE事件处理程序则会不同,使用attachEvent()和detachEvent(),与使用dom0的区别在于处理事件的作用域,使用attachEvent作用域会在全局作用域运行,事件处理程序都会在冒泡阶段运行,接受两个参数
stopPropagation()方法会阻止程序冒泡
原文:http://www.cnblogs.com/yanwei-sun/p/5236606.html