写js的时候都知道,函数是我们基本上面每天都在写的一个东西,因为很多的功能是需要函数来实现的,没有函数很多的效果是没办法实现的,那么今天简单的总结一下可以触发函数的一些事件。
代码语言:javascript复制onclick //鼠标点击触发
应用场景:一般是button的时候,可以点击的地方会用到的一个事件。
效果实现:鼠标点击完成一次的时候触发。
例如:
代码语言:javascript复制<input type="text" id="testid" value="123"/>
<button οnclick="test()">点击测试</button>
代码语言:javascript复制function test(){
layer.msg("您输入的数据是:" $("#testid").val())
}
代码语言:javascript复制onmousedown //鼠标按下去触发
应用场景:一般是可以输入的地方,例如type=text的input。
效果实现:当鼠标点击在输入框按下去瞬间的时候会触发这个函数。
代码语言:javascript复制onmouseup //鼠标放开触发
应用场景:一般是可以输入的地方,例如type=text的input。
效果实现:当鼠标松开的时候会触发,和down是相对的。
代码语言:javascript复制onmousemove //鼠标在元素上移动操作
应用场景:一般是需要随时获取某一个元素信息的时候,一些图片的介绍或者别的。
效果实现:鼠标移动到该元素上,在元素上只要鼠标发生移动就会触发这个函数。
代码语言:javascript复制onmouseenter //鼠标进入元素操作
应用场景:一般是需要介绍一个元素信息,但是不需要实时获取的时候。
效果实现:鼠标从非元素的区域进入到该元素区域的时候,但是离开的时候是不会触发的,而且在元素里面移动也是不触发的,只有进入的一瞬间会触发。
代码语言:javascript复制onmouseleave //鼠标离开元素范围操作
应用场景:一般是用到给用户提示。
效果实现:鼠标从元素的区域离开的时候。
代码语言:javascript复制onmouseout //鼠标离开元素操作
应用场景:也是给用户提示的时候用到的。
效果实现:这里可能很多的人没有具体的追究过和leave的区别,这里需要说明的一点是leave是离开范围的时候,但是out是离开元素的时候,怎么看出来呢?举个例子:
代码语言:javascript复制<div title="onmouseleave与onmuseout的区别,leave是离开范围,out是离开元素" style="border:0px;height:100px;margin-top:10px;" οnmοuseleave="this.style.display='none'" >
<div title="1" style="border:0px;height:33px;background-color:blue;"></div>
</div>
说明一下,这里是两个元素,也就是说,里面的div是外面div的子元素,这个时候如果是leave也就是离开元素范围的操作,那么也就是说,我们从外面进入到里面div的时候是不会触发函数的,但是离开这个父元素范围最大的范围的时候会触发,如果是out的时候,那么我们从父元素就如到子元素的时候,out会认为你离开了元素本身,那么就会触发,尽管你还在最大的div里面,但是你进入到了别的元素(子元素)。
代码语言:javascript复制onmouseover //鼠标移动进入该区域
应用场景:提示。
效果实现:当您的鼠标进入到了该元素的区域,那一刻会触发,但是在元素里面移动是不会触发的。
代码语言:javascript复制onmousewheel //滚轮滚动的时候触发
应用场景:需要滚轮操作的时候
效果实现:将鼠标移动到该元素的区域,这个时候滚动您的鼠标的滚轮,就会触发函数。
代码语言:javascript复制onkeydown //键盘按下去触发
应用场景:实时获取键盘输入数据的时候。
效果实现:将鼠标移动到该元素的区域,这个时候按压键盘上的任意键位,均可以触发,那么numlock如果关闭的时候,数字键是不是可以呢?答案是可以的,这个函数监听的是键盘的是操作,不管是不是被锁定,也就是说这个监听的是包含系统按键的。
代码语言:javascript复制onkeypress //键盘完成一次按压抬起触发
应用场景:实时获取键盘输入数据
效果实现:将鼠标移动到该元素上面,这个时候按压任意字母或者数字键均可以触发,那么numlock关闭的时候呢?这个是不可以的,系统按键也是不可以的,例如方向键。这里需要说明一下,如果您调的输入法是中文的,那么您输入中文的时候是不会触发的,即使完成了一次按压,还有就是回车键和空格键是属于系统按键,但是是可以触发这个函数的。
代码语言:javascript复制onkeyup //键盘松开的时候触发
应用场景:实时获取键盘输入的数据。
效果实现:将鼠标移动到该元素上面,这个时候按压任意键位并放开就会触发,这个时候如果您的输入法是中文的,那么放开会不会触发呢?会的,只要您的键位放开了,不管是不是系统按键,都是可以触发的。
代码语言:javascript复制onseeking //用户开始重新定位视频或者音频的时候触发
应用场景:播放视频或者音频的时候更改播放进度。
效果实现:鼠标点击或者滑动播放时间条的时候。
代码语言:javascript复制onseeked //用户重新定位视频或者音频的时候触发
应用场景:播放视频或者音频的时候更改播放进度。
效果实现:鼠标重新定位播放时间的时候,这里滑动是不是可以触发呢?是可以的,但是滑动的过程总是要停止的,也就是说如果一直滑动没有停止的话,这个函数是不触发的,但是onseeking是知道滑动就会触发,不管是不是停止。
代码语言:javascript复制onchange //当内容改变的时候触发
应用场景:提示用户信息的更改
效果实现:这里是里面内容改变的时候,例如123是内容,那么您删除3,然后又输入3会不会触发呢?不会,因为没有改变内容。