js编程语言中的事件机制

1.事件的三要素
事件源【农业银行】
DOM对象
事件处理函数 【警局出警,处理抢劫事件】
匿名函数,在未来的某个时刻当绑定的事件发生的时候执行
浏览器来进行调用
事件对象 【抢劫事件所有记录】
记录事件发生的详细信息
2.事件绑定
1)普通的属性绑定 onXxx
兼容性强,所有的浏览器都支持
dom.onXxx = handler;
2)方法绑定 addEventListener()
适用于非IE低版本浏览器,IE9以下都不支持
dom.addEventListener(eventType,handler,useCapture)
eventType 事件类型
handler 事件处理函数
useCapture 是否在捕获阶段调用,默认false
3)方法绑定 attachEvent()
适用于IE低版本浏览器,IE9以下都支持
dom.addEventListener(eventType,handler)
3.事件流
前提:元素嵌套
事件捕获
由外而内
事件冒泡 反馈
由内而外
4.事件对象
由浏览器构建,传递到事件处理函数中
event是MouseEvent的实例,MouseEvent继承Event
实例属性
type
事件类型
target
目标dom对象,指的是实际操作的那个dom对象
currentTarget
出现在事件冒泡中,指向当前这个dom对象
实例方法
preventDefault()
阻止事件的默认行为
stopPropagation()
停止冒泡
5.事件代理
不直接将事件处理函数绑定到dom元素,而是绑定在其父级元素上,好处是父级元素的子元素可以任意的变化,比如增减。当事件发生时通过event.target获取子元素

	mouseover 支持事件代理,可以识别子元素
	mouseenter  不支持,不识别子元素

	mouseout  支持
	mouseleave 不支持
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值