事件冒泡,事件捕获

//JS事件流中有一种事件被称为“冒泡事件”,当一个元素被触发一个事件时,该目标元素上的事件会优先被执行,然后向外传播到每个祖先元素,恰如水里的一个泡泡似的,从产生就一直往上冒,到达水平面时,它才消失。在这个过程中,如果你只希望触发目标元素上的事件,而不想它传播到祖先元素上去,那么你需要在“泡泡”离开对象之前刺破它。

//  事件冒泡是一个从子节点向祖先节点冒泡的过程;

//事件捕获刚好相反,是从祖先节点到子节点的过程。 

//  方法一: return false;消除事件冒泡

//  方法二: event.stopPropagation();

//  方法三: if(event.target == this){alert("do")}

//  方法四:

function maopao () {

  var e = window.event || event;

  if ( e.stopPropagation ){ 

    //如果提供了事件对象,则这是一个非IE浏览器

    e.stopPropagation();

  }else{

    //兼容IE的方式来取消事件冒泡

    window.event.cancelBubble = true;

  } 

}

不将就,不强求!
原文地址:https://www.cnblogs.com/chenhongcai/p/5777935.html