jquery事件(常用)
鼠标事件:
单击和双击事件要在不同的块,并且还要解决事件冒泡
以上的几种事件都是鼠标的左键
hover有两个参数,第一个为进入的时候发生的事件,第一个function(),第二个参数为离开的时候发生的 事件,为第二个function()
这里的over是进入
其子元素也会触发相应的事件,所以不经常使用(mouseenter,mouseleave就不会这样)
只要稍微移动就会触发该事件,损耗非常大,一些捣蛋程序就使用了这个函数,
这个事件一般用在拖拽里
但是前提要是该元素有滚动条,如果用鼠标滚动滚动条同样可以触发该事件,不一定要滚动鼠标滚轴才触发该事件,同理,其他的鼠标事件也不一定要鼠标,如键盘使鼠标发生移动或者进入,移出也会触发事件
键盘事件:
事件都有event参数,event是一个对象
这里的event内部有按下的键的key值,keycode(一般是ASII码,但是有可能有shift键等,就不是ASII码)等信息
而$(this)的内容就是整个document元素
这里的事件也要在选定的元素内触发才有效,不是任意位置
还要区分鼠标和焦点(光标),事件要焦点在选定元素,而不是鼠标的位置
在以前的浏览器上keydown事件只发生在document上,不发生在获取焦点的元素上,但是 现在的浏览器可以
jquery的解决:
与keydown事件有区别,它只发生在实实在在的键盘事件,而使用输入法,shift键,alt等键时不会触发该事件
其他事件:
此时没有任何变化,改为window
resize事件是发生在浏览器窗口的,要用window对象
与表单相关
当你在输入框输入的时候,按回车后才会触发,而input类型为number时,有一定的时限去检查input的value是否改变
下拉列表一般使用的是change()事件
要元素是可编辑的并且可以选中的才可以触发该事件,例如当div或者a中的元素被选中时也不会触发该事件
在form表单中,button元素有提交功能,一般情况下button元素是没有提交功能的,就是普通的按钮
1.
Submit()事件中有一个参数是回调函数,只要回调函数返回的值为假,表单就不会提交,
2.
3。
Val()方法获取元素的值value
第三点多用于进行一些类似表单验证的操作
事件参数:
使用event将keydown事件加入到云南旅游相册实战例子中,实现按左右箭头键就可以切换图片,
事件绑定与取消:
这里的第一个参数为事件,第二个参数为回调函数,就是要发生事件时要做的事
上面也可以改成下面的形式:
第二个参数为选择器
阻止事件冒泡
为什么使用on()方法,而不直接使用keydown等事件方法呢?因为有的动态生成的元素(比如json动态生成
的元素,使用普通的方法获取不到这些元素
绑定多个事件:
on方法里面传入的为对象,但是存在问题,选择器???解决:
同时修改:
因为不修改的话其他的键会返回false,比如刷新等键就都会失效
事件取消:
上面案例展示了事件的绑定与取消