day12事件上
事件的两种模式:
内联模式,脚本模式
事件的分类:
鼠标事件:
点击事件
click
dbclick
mousedown
mouseup
移进
mouseenter
mouseover(子元素也会触发)
移出
mouseleave
mouseout(子元素也会触发)
移动
mousemove
键盘事件(key)
keydown 按下
keyup 弹起
keypress (字符键才触发 按下)
HTML事件
load加载事件
unload卸载
select选择
change修改
blur失去焦点
focus获取焦点
input输入内容
scroll滚动
submit提交
reset重置
所有函数都具备一个参数argument数组只有一个参数 这个参数就是event对象(事件源对象)
由于我们的argument[0]是或者对应的argument数组的第一个参数(是第一个形参 所以我们可以在对应的函数直接声明一个形参来接受数组里的第一个参数)
e.x e.y //对应鼠标到最顶部的距离(不包含不可见距离) 不常用
e.clientX e.clientY //同上
e.offsetX e.offsetY//在对应div里面的鼠标位置
e.pageX e.pageY//当前鼠标对应的最顶部距离(包含不可见距离)
e.layerX e.layerY//有定位基于自己,没定位和page相同
e.screenX e.screenY//鼠标距离屏幕最旁边的距离


按键相关属性
(长按)
ctrlKey //按了return true
altKey
shiftKey
button(只针对点击事件)
左键是0 中间为1 右键为2
type 事件触发类型
//e.currentTarget指的是注册了事件监听器的对象,而e.target指的是该对象里的子对象,也是触发这个事件的对象!
target当前触发事件的对象
currentTarget 当前加事件的对象
key 获取对应按下的建
keyCode 获取按下建的ascII值
charCode 获取keypress事件中按键的ascII码
事件委托机制
将原本子元素要做的事交给父元素
1.加事件给对应的父元素
2.在父元素中进行判断e.target
今日问题:
元素.style只能获得属性,获得不了其他地方写的样式;
源码
浙公网安备 33010602011771号