1.常用的鼠标事件
mousemove:鼠标移动mouseover:鼠标经过mouseout:鼠标离开mousedown:鼠标按下mouseup:鼠标弹起click:鼠标点击focus:获得焦点blur:失去焦点-
js鼠标划过事件一般有两对
onmouseover/onmouseout
onmouseenter/onmouseleave
区别:
1.onmouseover/onmouseout
鼠标经过自身会触发该事件,经过子元素也会触发该事件
2.onmouseenter/onmouseleave
鼠标经过自身触发该事件,经过子元素不触发该事件
2.常用的键盘事件
onkeyup:键盘被松开时触发不识别大小写,通过keyCode获取得到的a和A都是keydown:按下时触发,识别功能键,但不识别大小写keypress:按下时触发,但不识别功能键,但识别大小写三个事件的执行顺序是:keydown--keypress-keyup
keyCode:获取的是Ascll的值
3.模拟京东输入框案例
- 使用键盘按下事件,通过keyCode的值获取到判断是否为S的值
- 如果是把焦点定到输入框内
- 如果不是则弹出提示
- 直接获取焦点 element.focus()
- 拓展:直接获取点击事件 element.click()
4.BOM
bom包括dom等一一系列
-
页面加载事件
js代码之前都要写在每个需要使用js代码的标签后面,但是有了页面加载事件之后,我们可以随便书写JS代码,只需要用
window.addEventListener(‘load',function(){}包括该代码的意思就是,先执行完页面的所有文档内容,再执行JS代码
-
注意还有第二种写法:
当页面有很多图片的时候,用户访问到load触发可能需要很长的时间,交互效果就不能实现,必然影响用户体验所以用DOMContextLoaded事件比较合适,
I9以上才支持
语法:window.addEventListener('DOMContentLoaded',function(){})
5.调整窗口大小事件
resize
window.addEventListener('resize',function(){})只要窗口发生变化就会触发这个函数
6.定时器
-
机关枪定时器
setIntervalsetTimeout