-
事件处理程序:查看全部
-
事件流:查看全部
-
兼容DOM0级click事件: var EventUtil = { addHandler:function (elm,type,addHandler){ if(elm.addEventListener){ elm.addEventListener(type,addHandler, false); } else if (elm.attachEvent){ elm.attachEvent('on'+type,addHandler); } else { elm['on'+type]=addHandler; } }, removeEvent:function (elm,type,addHandler){ if(elm.removeEventListener){ elm.removeEventListener(type,addHandler, false); } else if (elm.detachEvent){ elm.detachEvent('on'+type,addHandler); } else { elm['on'+type]=null; } } }; //调用添加click函数 EventUtil.addHandler(elm,'click',test); //删除click事件 EventUtil.removeEvent(elm,'click',test);查看全部
-
事件对象查看全部
-
阻止事件默认行为: preventDefault();查看全部
-
阻止事件冒泡: stopPropagation();查看全部
-
DOM 2级事件: 定义了两个方法,用于处理指定和删除事件的处理程序的操作 addEventListener(),removeEventListener()查看全部
-
DOM 0级事件: 把一个函数赋值给一个事件的处理程序属性查看全部
-
HTML事件缺点:HTML和JS代码紧密耦合查看全部
-
eventUtil.addHandler(go,'click',function(e){ //e作为函数参数在js中默认为event的缩写,所以必须将e作为参数在此传递给函数,否则event的属性没有改变,方法也得不到调用 e=eventUtil.getEvent(e); alert(eventUtil.getElement(e).nodeName); eventUtil.preventDefault(e); eventUtil.stopPropagation(e); });查看全部
-
getEvent:function(event){ //非IE:event IE:window.event return event?event:window.event; }, getType:function(event){ return event.type; //非IE与IE相同 }, getElement:function(event){ //非IE:event.target IE:event.srcElement return event.target || event.srcElement; }, preventDefault:function(event){ //判断对象方法是否存在时,要将方法当做属性来判断[函数名后不加小括号:if(对象.方法函数)],很多方法没有返回值,即使有返回值也不一定是布尔值,当if(方法函数())时会出现不可预料的结果 if(event.preventDefault){ event.preventDefault(); //非IE方法处理 }else{ event.returnValue=false; //IE属性处理 } }, stopPropagation:function(event){ if(event.stopPropagation){ event.stopPropagation(); //非IE方法处理 }else{ event.cancelBubble=true; //IE属性处理 } }查看全部
-
键盘事件查看全部
-
keycode查看全部
-
keydown keypress查看全部
-
var eventUtil={ // 添加句柄 ////type==触发的元素事件,此处的时间名最好没有on前缀; handler==触发事件时调用函数 addHandler:function(element,type,handler){ if(element.addEventListener){ //能力检测 element.addEventListener(type,handler,false); }else if(element.attachEvent){ element.attachEvent('on'+type,handler); //IE中attachEvent()事件名都要有on前缀 }else{ element['on'+type]=handler; //element.onclick==element[‘onclick’] } }, } 非IE addEventListener removeEventListener (追加事件不需要on) IE(opera) attachEvent detachEvent(追加事件需要on),attachEvent只有两个参数查看全部
举报
0/150
提交
取消