位置: 编程技术 - 正文
推荐整理分享jQuery事件用法详解(jquery中的事件和事件处理有哪些),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:jquery中有哪些基础事件方法?,jquery中有哪些基础事件方法?,jquerychange事件,jquery的事件处理函数,jquery的事件处理机制包括,jqueryon事件,jquery的事件处理机制包括,jquery的事件处理函数,内容如对您有帮助,希望把文章链接给更多的朋友!
JavaScript在浏览器中以单线程模式运行,页面加载后,一旦页面上所有的JavaScript代码被执行完后,就只能依赖触发事件来执行JavaScript代码。
我们可以用jQuery这样绑定一个click事件:
on方法用来绑定一个事件,我们需要传入事件名称和对应的处理函数。另一种更简化的写法是直接调用click()方法:
jQuery能够绑定的事件
鼠标事件
click: 鼠标单击时触发;dblclick:鼠标双击时触发;mouseenter:鼠标进入时触发;mouseleave:鼠标移出时触发;mousemove:鼠标在DOM内部移动时触发;hover:鼠标进入和退出时触发两个函数,相当于mouseenter加上mouseleave。
键盘事件键盘事件仅作用在当前焦点的DOM上,通常是<input>和<textarea>
keydown:键盘按下时触发;keyup:键盘松开时触发;keypress:按一次键后触发
其他事件ready仅作用于document对象。由于ready事件在DOM完成初始化后触发,且只触发一次,所以非常适合用来写其他的初始化代码。
focus:当DOM获得焦点时触发;blur:当DOM失去焦点时触发;change:当<input>、<select>或<textarea>的内容改变时触发;submit:当<form>提交时触发;ready:当页面被载入并且DOM树完成初始化后触发下面的代码没有预期的效果:
因为JavaScript在此执行的时候,<form>尚未载入浏览器,所以$('#testForm)返回[],并没有绑定事件到任何DOM上
正确版本:
ready事件使用非常普遍,也这样简化:
甚至还可以再简化为(最为常见):
可以反复绑定事件处理函数,它们会依次执行:
事件参数
有些事件,如mousemove和keypress,我们需要获取鼠标位置和按键的值,否则监听这些事件就没什么意义了。所有事件都会传入Event对象作为参数(下边e就是一个event对象),可以从Event对象上获取到更多的信息:
取消绑定
一个已被绑定的事件可以解除绑定,通过off('click', function)实现:
可以使用off('click')一次性移除已绑定的click事件的所有处理函数无参数调用off()一次性移除已绑定的所有类型的事件处理函数
事件触发条件
事件的触发总是由用户操作引发的。例如,我们监控文本框的内容改动,当用户在文本框中输入时,就会触发change事件。但是,如果用JavaScript代码去改动文本框的值,将不会触发change事件。
有些时候,我们希望用代码触发change事件,可以直接调用无参数的change()方法来触发该事件:
input.change()相当于input.trigger('change'),它是trigger()方法的简写。
浏览器安全限制在浏览器中,有些JavaScript代码只有在用户触发下才能执行,例如,window.open()函数。
上一篇:jQuery 局部div刷新和全局刷新方法总结(用jquery实现局部刷新)
友情链接: 武汉网站建设