js中的event.preventDefault()和event.stopPropagation()用法及兼容

event.preventDefault()的作用是阻止一些默认的行为,比如点击链接不会跳到对应的地址;

var link = document.getElementById('myLink');
link.onclick = function(event){
    event.preventDefault();
}

event.stopPropagation()的作用是阻止事件冒泡;

var btn = document.getElementById('myBtn');
document.onclick = function(){
    alert(1);
}
btn.onclick = function(event){
    event.stopPropagation();
}

这样当点击btn时,绑定在document的事件不会被触发,因为btn的事件冒泡机制被组织了。

兼容IE

if (event.stopPropagation){  
    event.stopPropagation();  
}else{  
    event.cancelBubble=true;  
}  

if (event.preventDefault){  
  event.preventDefault();  
}else{  
   event.returnValue=false;  
}  

你可能感兴趣的:(JavaScript,html)