1.JS事件类型
1.JS事件类型
在JavaScript中,常用的基础事件有Window页面事件、鼠标事件、键盘事件、表单事件。
JavaScript绑定的事件的时候大多实在事件前面加上on
示例:
selector.onclick=function(){}
2.页面事件
在JavaScript中最常用的一个事件就是load。当页面完全加载后(包括所有图像、JavaScript文件、CSS 文件等外部资源),就会触发 window 上面的 load 事件
load:页面加载完成之后触发
resize:当浏览器窗口的大小被改变时触发
scroll:浏览器的滚动条位置发生改变时触发
3.鼠标事件
在 JavaScript 中,鼠标移入移出事件分别是 mouseover 和 mouseout。这两个事件是分别用来控制鼠标“移入”和“移出”两种状态的
click:单击鼠标时触发
dblclick:双击鼠标时触发
mousedown:按下任意一个鼠标按键时触发
mouseout:鼠标指针移出元素时触发
mousemove:鼠标指针在元素内部移动时持续触发
mouseup:用户释放鼠标按钮时触发
mouseover:鼠标指针移动到元素上时触发
<button onclick="Click()">鼠标单击</button>
<button ondblclick="DBClick()">鼠标双击</button>
<button onmousedown="MouseDown()" onmouseup="MouseUp()">鼠标按下和抬起</button>
<button onmouseover="MouseOver()" onmouseout="MouseOut()">鼠标悬浮和离开</button>
<button onmousemove="MouseMove()">鼠标移动</button>
<button onmouseenter="MouseEnter()" onmouseleave="MouseLeave()">鼠标进入和离开</button>
4.键盘事件
keydown和keypress非常相似都是在按下键盘上的键时触发。但这两个事件有 2 个区别:
- keypress 事件只在按下键盘的任一“字符键”(如 A—Z、数字键)时发,单独按下“功能键”(如 F1—F12、Ctrl 键、Shift 键、Alt 键等)不会触发;而 keydown 无论是按下“字符键”还是“功能键”都会触发。
- 按下“字符键”会同时触发 keydown 和 keypress 事件,但这两个事件的顺序是:先触发keydown 事件,然后再是 keypress 事件。
keydown:在用户按下键盘上的任意键时触发
keyup:在用户释放键盘上的任意键时触发
keypress:在用户按下键盘上的字符键时触发
<input id="name" type="text" onkeydown="myKeyDown(this.id)" onkeyup="myKeyUp(this.id)">
5.表单事件
在 JavaScript 中,当用户在文本框内输入文本时,文本框内字符串的改变将会触发 change事件。
blur:当前元素失去焦点时触发此事件
change:当前元素失去焦点并且元素的内容发生改变时触发此事件
focus:当某个元素获得焦点时触发此事件
2.JS事件和Jquery事件的区别
jquery事件与js事件的写法不同但效果一样。
jQuery是把JavaScript的一些方法 的实现给封装起来的,为了很好的解决浏览器兼容问题
jQuery中的事件和javascript中的事件有一个明显区别:javascript中的事件为onclick,那么jQuery中的事件则为click()或click(fn)。
js中常使用window.onload方法,jquery常使用$(document).ready()
event属性
给事件绑定的方法,触发的时候,浏览器都会给改方法传递一个事件对象(event)
vue事件中,如果响应事件的方法中没有参数,浏览器会自动传递事件对象
如果响应事件中有参数,事件对象会被覆盖掉,可以在参数中添加$event找回
type属性用来获得【当前触发事件】的类型
3.Javascript事件对象
事件对象的常用属性和方法: