jQuery阻止事件冒泡
jQuery框架中阻止事件冒泡的方法有两种:一种是使用stopPropagation()方法,另一种是使用return false;。
stopPropagation()方法
stopPropagation()方法可以阻止事件冒泡,即阻止事件向上冒泡到父元素中。使用stopPropagation()方法可以阻止某个事件的进一步传播,在某个事件函数中调用stopPropagation()方法,可以阻止该事件的冒泡行为。
$("#btn").click(function(event){ event.stopPropagation(); //点击按钮后,阻止事件冒泡 });
return false;
return false;也可以阻止事件冒泡,它不仅可以阻止事件冒泡,还可以阻止浏览器的默认行为,例如表单提交。
$("#btn").click(function(){ return false; //点击按钮后,阻止事件冒泡和浏览器的默认行为 });
原理
jQuery框架中阻止事件冒泡的原理是:当事件触发时,事件会从最具体的元素开始派发,派发到它的父元素,再派发到父元素的父元素,以此类推,派发到document对象,这就是事件冒泡的原理。使用stopPropagation()方法可以阻止事件冒泡,使之不再派发到它的父元素中;而return false;则可以阻止事件冒泡和浏览器的默认行为。