事件类型:鼠标事件、键盘事件
鼠标事件:
click(单击事件):
只要鼠标按下和松开时,鼠标指针在被选元素区域内部,那么无论鼠标中间是否离开过被选元素区域内部,函数都会触发。
dblclick(双击事件):
鼠标第一次按下和第二次松开时,鼠标指针在被选元素区域内部,并且时间间隔不能太长
mousedown:鼠标在被选元素区域内按下就触发
mouseup:鼠标在被选元素区域内松开就触发
mouseout:鼠标离开被选元素区域内就会触发
mouseleave:鼠标离开被选元素区域内就会触发(如果有子元素,那么从子元素离开到父元素,或从父元素离开到子元素都不会触发)
mouseover:鼠标进入被选元素区域内就会触发
mouseenter:鼠标进入被选元素区域内就会触发(如果有子元素,那么从子元素进入父元素,或从父元素进入子元素都不会触发)
mousemove:在被选元素区域内移动就会一直触发(与时间、距离都有关)
鼠标滚轮事件:
wheel: 鼠标滚轴滚动时,鼠标指针在被选元素内部,才会触发。
scroll(使用比较多):元素自己的滚动条滚动:单位时间内滚动条的位置发生变化(css中设置滚动条:overflow:scroll)
键盘事件:
keydown:输入框的键盘只要按下,就触发。
keyup:输入框的键盘只要松开,就触发。(比如一直按住,就不会触发)
keypress:输入框的键盘只要按下又松开,就触发。(但由于输入法的原因,只要按下就触发)
注意:keydown与keypress的区别:keydown在中文输入法中,也会不断的触发,包括enter键也会触发,而keypress就不会被触发。
这是keydown:
这是keypress:
输入框操作事件:
input:输入框在输入就触发
change:输入框失焦,并且value改变(常用于表单验证)
focus:输入框获取焦点时触发
blur:输入框失去焦点时触发
加载事件:
load:等待网页资源下载完毕再执行
img.onload: 图片节点加载完毕不会调用 要资源加载完毕就会调用
window.onload:等待页面所有资源下载完成(也就是浏览器加载完毕:5大BOM的功能加载完毕)才执行,包括图片资源的下载,所以它是最慢的
网页加载顺序:
url-->下载页面-->domTree,cssTree并行-->渲染树renderTree-->绘制页面-->继续下载图片资源,下载完毕再放到页面上去onload domTree:domTree的形成,是先把元素翻译成的节点对象挂到 domTree上去,再把属性 img_src放到渲染树上去
补充:
让标签有焦点:
1.标签写法:autofocus:true
2.js写法:x.focus()