-
卸载事件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元素上。如果提供了第二参数,那么事件在往上冒泡的过程中遇到了选择器匹配的元素,将会触发事件回调函数查看全部
-
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
提交
取消