js中阻止事件冒泡行为

demo

场景:如demo所示,父标签div有个点击事件,其子标签span也有一个点击事件。

当点击父标签时,弹出提示框,没问题;

当点击子标签时,也弹出了提示框,与需求不符合,出现了问题。

 这是由于事件冒泡造成的后果,我们要做的就是阻止事件冒泡。

话不多说,上代码

goCharge(ev){

        if(ev && ev.stopPropagation){   

           ev.stopPropagation();  //非IE下 它支持W3C的stopPropagation()方法

      } else {   

        window.event.cancelBubble = true;  //IE的方式来取消事件冒泡

      }  

    }

ps : span标签里的就不用加参数ev了,如果事件里有跳转路由的话会报错

问题解决!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容