addEventListener 有三个参数:第一个参数表示事件名称(不含 on,如 "click");第二个参数表示要接收事件处理的函数;第三个参数为 useCapture,本文就讲解它。

<div id="outDiv"><div id="middleDiv"><div id="inDiv">请在此点击鼠标。</div></div>
</div><div id="info"></div>var outDiv = document.getElementById("outDiv");
var middleDiv = document.getElementById("middleDiv");
var inDiv = document.getElementById("inDiv");
var info = document.getElementById("info");outDiv.addEventListener("click", function () { info.innerHTML += "outDiv" + "<br>"; }, false);
middleDiv.addEventListener("click", function () { info.innerHTML += "middleDiv" + "<br>"; }, false);
inDiv.addEventListener("click", function () { info.innerHTML += "inDiv" + "<br>"; }, false);

上述是我们测试的代码,根据 info 的显示来确定触发的顺序,有三个 addEventListener,而 useCapture 可选值为 true 和 false,所以 2*2*2,可以得出 8 段不同的程序。

  • 全为 false 时,触发顺序为:inDiv、middleDiv、outDiv;

  • 全为 true 时,触发顺序为:outDiv、middleDiv、inDiv;

  • outDiv 为 true,其他为 false 时,触发顺序为:outDiv、inDiv、middleDiv;

  • middleDiv 为 true,其他为 false 时,触发顺序为:middleDiv、inDiv、outDiv;

  • ……

最终得出如下结论:

  • true 的触发顺序总是在 false 之前;

  • 如果多个均为 true,则外层的触发先于内层;

  • 如果多个均为 false,则内层的触发先于外层。

JavaScript 中addEvent事件参数详解相关推荐

  1. Javascript中Window.open参数详解

    关于Window.open的参数小结(参书改编) 先看一个例子: [javascipt:]window.open("Webpage.asp?",Derek,"height ...

  2. JavaScript中DOM对象的详解

    *** JavaScript中DOM对象的详解*** DOM对象:Document Object Model,文档对象模型.也称为document(文档对象),是HTML页面当前窗体的内容,是连接JS ...

  3. python xgboost参数_xgboost中XGBClassifier()参数详解

    常规参数 booster gbtree 树模型做为基分类器(默认) gbliner 线性模型做为基分类器 silent silent=0时,不输出中间过程(默认) silent=1时,输出中间过程 n ...

  4. php 实现setinterval,JavaScript中setInterval的使用详解

    相信很多大伙都知道JavaScript中setInterval的作用是在播放动画的时,每隔一定时间就调用函数,方法或对象,也有很多小伙伴对此也只是知道setInterval的定义.也是一知半解,今天我 ...

  5. mysql binlog event_MySQL binlog中的事件类型详解

    MySQL binlog记录的所有操作实际上都有对应的事件类型的,譬如STATEMENT格式中的DML操作对应的是QUERY_EVENT类型,ROW格式下的DML操作对应的是ROWS_EVENT类型. ...

  6. Python数据可视化——matplotlib.pyplot中plt的参数详解

    matplotlib.pyplot中plt的参数详解: #平滑折线的示例 # plt.plot(xnew, ynew, marker='.', markevery=markevery, ls='-', ...

  7. 站长在线Python精讲:在Python函数中的默认参数详解

    欢迎你来到站长在线的站长学堂学习Python知识,本文学习的是<在Python函数中的默认参数详解>.本文的主要内容有:默认参数的概念和默认参数的示例.默认参数不能设置可变对象. 目录 1 ...

  8. 站长在线Python教程精讲:在Python函数中的关键字参数详解

    欢迎你来到站长在线的站长学堂学习Python知识,本文学习的是<在Python函数中的关键字参数详解>.本文的主要内容有:关键字参数的含义和关键字参数的应用举例. 目录 1.关键字参数的含 ...

  9. pandas中的read_csv参数详解

    1.官网语法 pandas.read_csv(filepath_or_buffer, sep=NoDefault.no_default**,** delimiter=None**,** header= ...

最新文章

  1. mybatis的一些基础问题
  2. 在Mybatis-spring上基于注解的数据源实现方案
  3. NYOJ 559 报数游戏
  4. spring事务管理-注解配置aop事务(重点)
  5. matlab华侨大学,闫铮-华侨大学-信息科学与工程学院
  6. r语言编程基础_这项免费的统计编程课程仅需2个小时即可学习R编程语言基础知识
  7. leetcode538 把二叉搜索树转换成累加树
  8. swap,交换,第三随笔
  9. win10 win7 一键获取TrustedInstaller权限
  10. 【算法随记二】线卷积积分及其在图像增强和特效方面的应用(一)
  11. 黑客学习路线(送给那些在学习路上迷茫的人)
  12. 普华集团翟山鹰:金融激荡30年 深度洞察金融的“奥秘”
  13. 如何远程办公电脑 关于电脑远程办公的方法和工具分享
  14. django ajax jquery csrf_exempt 设置favicon.ico
  15. 人教版三年级计算机教学计划,2017人教版三年级信息技术教学计划范文
  16. Gym - 101982E Cops And Robbers 网络流最小割
  17. 【疑难教程】视频上云服务平台EasyCVR使用Go语言可执行程序出现“Process XXX has exited with status XXXX”错误
  18. 程序员都可以做哪些自由职业?
  19. 短视频平台开发,首先要搭建短视频框架
  20. python 输入一个数组_python怎么输入数组

热门文章

  1. 中柏zpad6 android x86,Windows平板轻应用 中柏EZpad 6评测
  2. 022 Rust死灵书之污染
  3. C++ 网络爬虫 之 自动获取小米笔记本的最新驱动信息
  4. sem竞价账户投放建议技巧学会转化翻倍
  5. matlab课本作业答案,MATLAB 实用教程 课后习题答案
  6. 论《北京爱情故事》中石小猛的爱情
  7. 学习日志 Day 5
  8. 我还是从前那个少年计算机版音乐,我还是从前那个少年原唱
  9. 威海南海新区首届“龙腾齐鲁”龙王争霸赛开赛
  10. channel 1:open failed : administratively prohibited : open failed