参考作者献上:http://caibaojian.com/javascript-stoppropagation-preventdefault.html
页面中的所有#menus1 li 都绑定了click()事件,需求是当点击<li>菜单的时候触发<li>以及<li>下的<a>标签的点击时间,<li>click是给<li>加class标记被选择,<a>标签click是打开页面,遇到问题是,<a>标签的事件触发了但是<li>标签的时间没有触发?
发现:
$("#testC").on('click',function(){
return false;
});
JQuery中return false;的含义是阻止事件的默认行为和冒泡,所以导致没有成功触发上级标签的点击事件,最后改成
只阻止默认行为:
//阻止浏览器的默认行为
function stopDefault( e ) {
//阻止默认浏览器动作(W3C)
if ( e && e.preventDefault )
e.preventDefault();
//IE中阻止函数器默认动作的方式
else
window.event.returnValue = false;
return false;
}