Javascript dom0级和dom2级事件之间的区别

dom0级事件:

绑定事件element.οnclick=function(){}

元素绑定同一类型事件时,后面的效果会覆盖前面的效果,如下代码,点击”点击“时,弹出框提示文字2,这表示,alert(2)覆盖了前面的alert(1)效果




	
	Document


	
点击



移除事件element.οnclick=null;


dom2级事件:

绑定事件element.addEventListener('事件类型',‘事件处理函数',true/false);

第三个参数:true表示捕获,false表示冒泡,不填时默认为false

元素可以绑定多个事件,可以是同类型的,也可以是不同类型的,同一类型事件时,后面的效果不会覆盖前面的效果,效果在时间上有先后顺序;如下代码,点击”点击“时,弹出框先提示文字1,再提示文字2,接着鼠标移出”点击“时,弹出文字3




	
	Document


	
点击

移除事件element.removeEventListener(('事件类型',‘事件处理函数',true/false);

需注意的是:removeEventListener与addEventListener 的函数参数必须完全一致,才能移除有效

下面列举一下两种事件特殊情况:

1.(函数)为匿名函数时,移除无效




	
	Document


	百度一下,你就知道




2.(函数)带参数时,绑定事件无效




	
	Document


	百度一下,你就知道



因此带参数的函数,应改为下列模式,用一个变量指向一个函数,这样绑定事件有效,移除也有效




	
	Document


	百度一下,你就知道






你可能感兴趣的:(Javascript dom0级和dom2级事件之间的区别)