JQuery 基础 DOM事件模型

浏览器的事件模型,有两种:

1. DOM 0级事件:产生较早,所有浏览器基本上都支持这种事件模型

2. DOM 2级事件:绝大部分现代浏览器都支持,IE8 和更早期版本浏览器 部分或不支持


DOM 0级事件模型

通过 dom 的 onclick 属性,传入函数代码,例如:

	<input type="button" οnclick="doSomething()"/>
- onclick 会被覆盖(给一个 dom 写了多个 onclick 时)

- 事件冒泡:触发了子元素的事件,也会将其父元素的事件触发

- 阻止事件冒泡: event.stopPropagation()



- 阻止链接跳转

- 阻止点击按钮刷新网页



DOM  2级事件模型

解决了事件覆盖的缺点

- addEventListener(eventType, listener, useCapture)

eventType: dom 0 级的事件类型,去掉了on

listener: 事件实例

useCapture:为false时,与DOM 0 级事件一样,仅冒泡不捕获;为true时,仅捕获不冒泡。捕获与冒泡的事件执行顺序相反。默认是false.

	<script type="text/javascript">
		var ele = document.getElementById('p');

		ele.addEventListener('click',function(event){
			console.log('click');
		},false);

		ele.addEventListener('click',function(event){
			console.log('click2');
		},false);
	</script>

IE 9 之前的浏览器,并没有很好地支持 DOM 2级事件模型,对于它,使用 :

- attachEvent(eventName, handler)


DOM 2 也有事件冒泡的机制,但其首先是会捕获事件冒泡对应的dom 结构,再执行事件冒泡

    


 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值