$('#LocalLife_PopUp_layer').find('.SelectCity_Cont ul').click(function(e){            var e=e||window.event;            var obj=e.target||e.srcElement;            $('#LocalLife_PopUp_layer').find('.SelectCity_Cont ul').find('i').removeClass("Selectma…
$(".up-list a.th1").click(function(){ $(this).next("ul#up-list-ul").show(); }); $(document).mousedown(function(e){ var _con = $("#up-list-ul"); if(!_con.is(e.target) && _con.has(e.target).length === 0){ $("#up-li…
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <title></title> <script type="text/javascript…
只关注括号内问题的同学,可直接跳转到蓝字部分.(标题起的有点大,其实只讨论一个问题) 两个在React组件上绑定的事件,产生冲突后,使用e.stopPropagation(),阻止冒泡,即可防止事件冲突,毫无问题. 今天是踩了个React事件的坑,需求可以简化为:点击框体以外的部分则隐藏框体.最直接的想法,document上绑定个事件,设置控制显示隐藏的state为false,在框体上绑定个事件,阻止冒泡.这样点击框体内部就不会触发document上的事件. 等写完了,发现一个问题,无法阻止冒泡…
阻止冒泡和阻止默认事件—js和jq相同,jq的event是一个全局的变量 我们写代码的时候常用的都是事件冒泡,但是有的时候我们并不需要触发父元素的事件,而浏览器也有自己的默认行为(表单提交.超链接跳转等). 点击按钮子元素的时候不希望触发父元素的点击事件. 之前提到的mouseout事件. 在大部分元素上滚动鼠标滑轮都会触发body的界面滑动(如果界面有滚动条) 在有滚动条的元素中滚动不会触发body界面的滑动,但是滑条滑到底部或者顶部并继续滑动的时候会触发父元素乃至body整体的界面滑动. 其…
stop修饰符 阻止冒泡行为 可以在函数中利用$event传参通过stopPropagation()阻止冒泡 通过直接在元素中的指令中添加 .stop prevent修饰符 阻止默认行为 可以在函数中利用$event传参通过preventDefault()阻止默认行为 通过直接在元素中的指令中添加 .prevent  其他的事件修饰符 .stop .prevent .capture .self .once .passive 事件修饰符可以串联使用,串联的顺序不一样,所表示的意思也不同 例如  .…
DOM事件标准定义了两种事件流,分别是捕获和冒泡.默认情况下,事件使用冒泡事件流,不使用捕获事件流.你可以指定使用捕获事件流,方法是在注册事件时传入useCapture参数,将这个参数设为true. 冒泡事件流 当事件在某一DOM元素被触发时,例如用户在客户名字节点上点击鼠标,事件将跟随着该节点继承自的各个父节点冒泡穿过整个的DOM节点层次,直到它遇到依附有该事件类型处理器的节点,此时,该事件是onclick事件.在冒泡过程中的任何时候都可以终止事件的冒泡,在遵从W3C标准的浏览器里可以通 过调…
1:jQuery是一个快捷简便的JavaScript框架,说道框架可以直接理解为就是对原来底层的东西进行了封装使得开发者能够利用这个框架快速开发. 2:在当今的各个浏览器中都支持事件的冒泡,所谓的冒泡可以这样理解:        条件:外层有一个DIV元素,在内层有一个P元素,他两存在这样的关系:DIV是P元素的父元素,而P是外层DIV的子元素,他们之间存在包含和被包含的关系.       事件:现在我们都在这两个元素上绑定相同的事件,比如click事件.       结果:这时,当我们点击内层…
使用zepto库,有如下dom <div id="J_parent"> <a href="#"> <span>点我有惊喜</span> </a> </div> 以上div内的节点是后续生成的,通过on绑定事件: $('#J_parent').on('tap', 'span', function(e){ e.preventDefault(); e.stopPropagation(); consol…
摘要 很多同学对阻止事件冒泡和阻止事件默认行为容易混淆,项目中因为一些原因也需要阻止浏览器的一些默认行为,这里就简单总结一下. 阻止事件冒泡 什么是事件冒泡这里就不再赘述了,网上的文章一大把,这里就简述一下如何阻止事件冒泡,阻止事件冒泡在使用浏览器原生API的情况下,是需要分情况考虑的,毕竟有个个性的浏览器IE,这里分为IE实现和W3C标准实现. 在W3C标准实现中,我们阻止事件冒泡可以很容易使用标准API 基本语法: event.stopPropagation(); IE实现下(这里主要指IE…