DOM:envent(事件模型)

2018-04-23  本文已影响0人  CeaCrab

DOM标准
dom1有两个版本
Document Object Model Events,events单独一个标准 他是属于dom标准之内的。主要学习dom level 2(也就目前使用最广泛的标准)

dom level0事件(W3c规范之前已经有了) :onclick

1.html中答案是b,c。因为不加括号是不调用。

  1. js中答案是a。因为onclick是函数属性,一调用它后边接的是函数。不加括号代码只这个函数。一旦用户点击,浏览器会自动调用函数。


    深度截图_选择区域_20180326120000.png

dom level2事件:addEventListener/removeEventListener(level 1就是汇总了一下0)

比如一个button,click有一个队列,mouseenter有一个队列,每次addEventListener就是往队列添加一个,removeEventListener就是移除一个。

  1. xxx.onclick = function(){} :不能重复监听,有可能覆盖别人的监听事件
  2. xxx.addEventListener('click',function(){}) :xxx拥有一个EventListeners队列,但是这个队列你不能访问,你需要addEventListener来给函数排个队,所以能多次使用监听事件。
    xxx拥有一个EventListeners队列,但是这个队列你不能访问,你需要addEventListener来排个队,所以能多次使用监听事件
    移除队列
    关于on和one的用法:one就是函数执行完之后,移除了事件。
    深度截图_选择区域_20180326151346.png

默认冒泡事件,不传第三个参数,默认是false,就是冒泡阶段,函数在右边,为true是捕获阶段,函数在左边。

上一篇下一篇

猜你喜欢

热点阅读