日期:2014-05-16  浏览次数:20408 次

jquery,点击DIV触发事件,但是点击DIV的子元素不触发事件,该如何写选择器?
如题

DIV里边有几个按钮和链接 现在希望点按钮和连接时一切正常,点击没有子元素的区域时DIV加个背景色这样

使用选择器实现还是用JS事件冒泡之类的实现?

求教....JS新人

就比如新浪微博的,好友分组.
当我点击某好友时 就给加上对钩  但是如果我点了里边的某个链接  就不会加对钩


------解决方案--------------------
点击里面的链接后的事件return false可以取消冒泡和后面的事件了吧
function stopBubble(e) {
//如果提供了事件对象,则这是一个非IE浏览器
if(e && e.stopPropagation) {
  //因此它支持W3C的stopPropagation()方法
  e.stopPropagation();
} else {
  //否则,我们需要使用IE的方式来取消事件冒泡
  window.event.cancelBubble = true;
}
return false;
}

------解决方案--------------------
$('.div a').click(function(e){
   e.stopPropagation();
})

里面写1L的那个方法也可以,主要就是让a标签点击了以后停止冒泡。

.div就是外层容器的class