JavaScript:)事件

事件:事件源,事件类型,事件处理函数组成.
事件对象:
在IE低版本:window.event
chorme等等:在每一个事件处理函数的行参位置,默认第一个就是事件对象
兼容写法:e=e||window.event

点击事件的光标坐标点获取

  • 相对事件源:offsetX和offsetY
  • 相对浏览器:clientX和clientY
  • 相对于页面:pageX和pageY

点击按键信息

事件对象.button获取信息
0为鼠标左键,2为鼠标右键

常见事件

  • 浏览器事件:
    load:页面全部加载完毕
    scroll:浏览器滚动触发

  • 鼠标事件:
    click:点击事件
    dblclick:双击事件
    contextmenu:右键单击事件
    mousedown:鼠标左键按下事件
    mouseup:鼠标左键抬起事件
    mousemove:鼠标移动
    mouseover:鼠标移入事件
    mouseout:鼠标移出事件
    mouseenter:鼠标移入事件
    mouseleave:鼠标移出事件

  • 键盘事件
    keyup:键盘抬起事件
    KeyDown:键盘按下事件
    keypress:键盘按下再抬起事件
    获取键盘码的兼容写法:
    e.keyCode||e.which

  • 组合按键
    altKey:alt键按下为TRUE,否则为FALSE
    shiftKey
    ctrlKey

  • 表单事件
    change:内容改变
    input:内容输入
    submit:表单提交

  • 触摸事件:
    touchstart:触摸开始
    touchend:触摸结束事件
    touchmove:触摸移动事件

事件绑定方式

  • 事件监听去给元素绑定事件,addEventListener,IE里用 attachEvent

事件监听

  1. addEventListener:
    语法:元素.addEventListener(‘事件类型’,‘事件处理函数’,冒泡还是捕获)
    事件类型不写on,
    顺序注册,顺序执行
  2. attachEvent:
    语法:元素.attachEvent(‘事件类型’,事件处理函数)
    事件类型写on
    顺序注册,倒序执行

事件的传播

当元素触发一个事件时,其他父元素也会触发相同的事件,父元素的父元素也会触发相同的事件

冒泡,捕获,目标

  • 目标:点击谁,目标就是谁
  • 冒泡:
    从事件目标的事件处理函数开始,依次向外,直到window的事件处理函数触发
  • 捕获:
    从window的事件处理函数开始,依次向内,只要事件目标的事件处理函数执行

事件委托

冒泡机制,点击子元素时,
也会同步触发父元素的相同事件,
子元素的事件委托给父元素
target:
target这个属性是事件对象里的属性,点击的目标
在IE使用:srcElement
兼容写法e.target||e.srcElement

  • 元素的事件只能委托给结构父级或者结构父级的同样事件上

阻止默认行为

e.preventDefault():非IE使用,
e.returnValue=false:IE使用

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值