-
事件处理程序:其实就是dom节点的用户操作动作,例如onclick、onmouseover、onblur等。 事件处理程序有三种方式: 1、HTML方式,直接在html的dom节点上面添加事件属性。 例如:<input type="button" onclick="xxx()">. 这种方式用的较少,因为有两个缺点:A、事件与html的文档结构耦合比较高,增加了维护的工作量;B、不能为一个事件添加多个处理函数 2、DOM0级事件处理程序:这种方式用的比较多。 例如: 添加事件:nodeObject.onclick=function(){}; 删除事件:nodeObject.onclick=null; 3、DOM2级事件处理程序:这种方式存在浏览器兼容性问题 IE中写法: 添加事件:nodeObject.attachEvent("onclick",function(){xxx}); 移除事件:nodeObject.detachEvent("onclick",function(){xxx}); 其他浏览器写法: 添加事件:nodeObject.addEventListener('click',function(){},false); 移除事件:nodeObject.removeEventListener('click',function(){},false);查看全部
-
事件流:事件冒泡(IE支持的模式)和事件捕获(netscape支持的模式) 事件冒泡:事件由最具体、最深层的节点向上级一层一层的传播 事件捕获:与事件冒泡相反,先作用在最外层,依次向里层一层层传播。 举例: <!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <title>测试事件冒泡</title> </head> <body> <div><input type="button" id="btn1" value="测试事件冒泡"></div> <script type="text/javascript"> var div = document.getElementsByTagName('div')[0]; var btn = document.getElementById('btn1'); div.onclick = function(){ alert("我是外层的div!"); } btn.onclick = function(){ alert("我是里层的button!"); } </script> </body> </html>查看全部
-
event.preventDefault();//阻止事件默认行为查看全部
-
阻止事件冒泡:event.stopPropagation();查看全部
-
event.target.nodeName 用于获取事件的目标查看全部
-
event.type用于获取事件的类型查看全部
-
element.onclick===element['onclick']查看全部
-
attachEvent detachEvent查看全部
-
DOM2级事件: Btn.addEventListener('click',showMes,false); 即:事件-函数-false 兼容各种浏览器查看全部
-
DOM0级事件:事先取出该元素,然后将取出的元素来绑定相应的事件;查看全部
-
直接在HTML代码上添加事件方法叫HTML事件,缺点:因为该事件方法已经放在一起,我们在改动项目的时候,需要改动的地方比较多!查看全部
-
事件捕获:不太具体的节点应该更早接收到事件,而最具体的节点最后接收到事件。查看全部
-
IE -- 事件冒泡(流):即事件最开始由最具体的元素,触发然后逐级向上传播至最不具体的那个节点。也就是说,我明明只触发了当前的元素,其它元素也跟着被触发了。查看全部
-
鼠标位置:clientX和clientY查看全部
-
IE10以下不支持 document.getElementByClassName,需要封装方法做兼容。 参数:元素的class,父元素的id(可选)查看全部
举报
0/150
提交
取消