为了账号安全,请及时绑定邮箱和手机立即绑定
  • 卸载事件off()方法 通过.on()绑定的事件处理程序 通过off() 方法移除该绑定 根据on绑定事件的一些特性,off方法也可以通过相应的传递组合的事件名,名字空间,选择器或处理函数来移除绑定在元素上指定的事件处理函数。当有多个过滤参数时,只有与这些参数完全匹配的事件处理函数才会被移除 绑定2个事件 $("elem").on("mousedown mouseup",fn) 删除一个事件 $("elem").off("mousedown") 删除所有事件 $("elem").off("mousedown mouseup") 快捷方式删除所有事件,这里不需要传递事件名了,节点上绑定的所有事件讲全部销毁 $("elem").off()
    查看全部
  • 不懂trigger()记录一下,有啥用?
    查看全部
  • on方法,这是利用了on的另一个事件机制委托的机制衍变而来的 委托机制 .on( events ,[ selector ] ,[ data ], handler(eventObject) ) 在on的第二参数中提供了一个selector选择器,简单的来描述下 参考下面3层结构 <div class="left"> <p class="aaron"> <a>目标节点</a> //点击在这个元素上 </p> </div> 给出如下代码: $("div").on("click","p",fn) 事件绑定在最上层div元素上,当用户触发在a元素上,事件将往上冒泡,一直会冒泡在div元素上。如果提供了第二参数,那么事件在往上冒泡的过程中遇到了选择器匹配的元素,将会触发事件回调函数
    查看全部
    0 采集 收起 来源:on()的高级用法

    2018-03-22

  • focus()和blur()不会冒泡; focusin()和focusout()会冒泡;
    查看全部
  • 在我看来你首先没弄清楚 e是什么,其次才是 type是什么 e是on()给函数返回的一个事件,可以理解为 $("#test3").on({ mousedown: function(e) { $(this).text('触发事件:' + e.type) }, mouseup: function(e) { $(this).text('触发事件:' + e.type) } }) on方法,给匿名函数添加了一个事件e,这个e就代表当前事件本身: mousedown: function(e),这里的e就是mousedown事件 mouseup: function(e),这里的e就是mouseup事件 再来理解type:所有事件都有一个类型,事件的类型通过type来查询,e.type就是获取e事件的事件类型。 在这里,#test3这个元素被添加了 mousedown事件和mouseup事件, $(this)指向了#test3这个元素,那么正对这个元素调用 e.type,就是获取在这个元素上的事件类型 所以通俗的翻译, mousedown: function(e) { $(this).text('触发事件:' + e.type) } 就是当在#test3上面鼠标按下时,输出 #test3上触发了哪个事件类型 不恰当的解释就是,我打(mousedown)了你(#test3),然后问一个旁观者(function),我刚才对你做了什么事(e.type)
    查看全部
  • KeyPress主要用来接收字母、数字等ANSI字符,而 KeyDown 和 KeyUP 事件过程可以处理任何不被 KeyPress 识别的击键。诸如:功能键(F1-F12)、编辑键、定位键以及任何这些键和键盘换档键的组合等。只能捕获单个字符,不能捕获组合键 $('.target1').keypress(function(e){ $('em').text(e.target.value) })
    查看全部
  • keydown第一次按下时,值还未输入,所以触发了没有显示 keyup第一个松开时,值已经输入,所以触发了有显示 $('.target1').keydown(function(e){ $('em:first').text(e.target.value) }) $('.target2').keyup(function(e){ $('em:last').text(e.target.value) }) 按键按下显示内容,你第一次按键(例如:r)的时候元素的内容是空的,当你第二次开始按的时候,这时元素里面已经有一个内容(即:r),这时就会把这个r显示出来。这也就是你说的按下后第二次才开始显示。你可以仔细看看这节课程刚开始的时候所说的内容,你明白了keydown事件的触发过程,你就懂了。 键盘的逻辑是:先“按下”,再“输入”。故监听keydown时显示出来的是上一次输入的内容。而keyup就没有这个问题了。
    查看全部
  • 具体能触发submit事件的行为: <input type="submit"> <input type="image"> <button type="submit"> 当某些表单元素获取焦点时,敲击Enter(回车键) 2,form元素是有默认提交表单的行为,如果通过submit处理的话,需要禁止浏览器的这个默认行为 传统的方式是调用事件对象 e.preventDefault() 来处理, jQuery中可以直接在函数中最后结尾return false即可 jQuery处理如下: $("#target").submit(function(data) { return false; //阻止默认行为,提交表单 });
    查看全部
  • <script type="text/javascript"> //监听input元素中value的选中 //触发元素的select事件 $("input").select(function(e){ alert(e.target.value) }) $("#bt1").click(function(){ $("input").select(); }) //监听textarea元素中value的选中 $('textarea').select(function(e) { alert(e.target.value); }); </script>
    查看全部
  • change 有变化则触发 适用:input、select、textarea
    查看全部
  • 你们看focus和blur事件都绑到了div上,你点击input或者点完移开失去焦点当然没反应了,因为input没有绑定事件啊。 而focusin和focuout也绑在div上,为啥有反应呢? 因为后者在你点input的时候会一级一级的往上面查父元素,如果父元素有事件就执行了,所以你看到了效果。这叫事件冒泡。 为啥前者不行呢?因为前者不支持事件冒泡。
    查看全部
  • 方法一:$ele.focusout() 绑定$ele元素,不带任何参数一般是用来指定触发一个事件,可能一般用的比较少 方法二:$ele.focusout( handler ) 绑定$ele元素,每次$ele元素触发点击操作会执行回调 handler函数 这样可以针对事件的反馈做很多操作了 方法三:$ele.focusout( [eventData ], handler ) 使用与方法二一致,不过可以接受一个数据参数,这样的处理是为了解决不同作用域下数据传递的问题
    查看全部
  • jQuery自定义事件之triggerHandler事件 trigger事件还有一个特性:会在DOM树上冒泡,所以如果要阻止冒泡就需要在事件处理程序中返回false或调用事件对象中的.stopPropagation() 方法可以使事件停止冒泡 trigger事件是具有触发原生与自定义能力的,但是存在一个不可避免的问题: 事件对象event无法完美的实现,毕竟一个是浏览器给的,一个是自己模拟的。尽管 .trigger() 模拟事件对象,但是它并没有完美的复制自然发生的事件,若要触发通过 jQuery 绑定的事件处理函数,而不触发原生的事件,使用.triggerHandler() 来代替 triggerHandler与trigger的用法是一样的,重点看不同之处: triggerHandler不会触发浏览器的默认行为,.triggerHandler( "submit" )将不会调用表单上的.submit() .trigger() 会影响所有与 jQuery 对象相匹配的元素,而 .triggerHandler() 仅影响第一个匹配到的元素 使用 .triggerHandler() 触发的事件,并不会在 DOM 树中向上冒泡。 如果它们不是由目标元素直接触发的,那么它就不会进行任何处理 与普通的方法返回 jQuery 对象(这样就能够使用链式用法)相反,.triggerHandler() 返回最后一个处理的事件的返回值。如果没有触发任何事件,会返回 undefined
    查看全部
  • 简单来讲就是:根据绑定到匹配元素的给定的事件类型执行所有的处理程序和行为
    查看全部
  • 方法一:$ele.focusin() 绑定$ele元素,不带任何参数一般是用来指定触发一个事件,一般用的比较少 方法二:$ele.focusin( handler ) 绑定$ele元素,每次$ele元素触发点击操作会执行回调 handler函数 这样可以针对事件的反馈做很多操作了 方法三:$ele.focusin( [eventData ], handler ) 使用与方法二一致,不过可以接受一个数据参数,这样的处理是为了解决不同作用域下数据传递的问题
    查看全部

举报

0/150
提交
取消
课程须知
1、有HTML/CSS基础 2、有JavaScript基础
老师告诉你能学到什么?
1、jQuery的基础语法 2、jQuery事件处理

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!