js事件处理程序return false ,preventDefault,returnValue
面试题目中,经常会被问到如何阻止默认行为。
以下是《javascript权威指南》书中的内容,详情可以去看书。
能够取消事件默认操作的方法有三种
1、属性注册的事件处理程序的返回值false能用于取消事件的浏览器默认操作;
2、使用addEventListener()的浏览器,可以调用事件对象的preventDefault()取消默认行为;
3、IE9之前的版本的可以设置事件对象的returnValue为false取消默认行为
function cancelHandler(event){ //window.event是获取IE的事件对象 var event = event||window.event; if(event.preventDefault) event.preventDefault();//DOM标准 if(event.returnValue) event.returnValue=false;//IE浏览器 return false;//用于处理使用对象属性注册的处理程序 }
我整理的js事件的思维导图,可以用来学习学习一下js事件