Web 浏览器中可能发生的事件有很多类型。如前所述,不同的事件类型具有不同的信息,而“ DOM3级事件”规定了以下几类事件。

  • UI(User Interface,用户界面)事件:当用户与页面上的元素交互时触发;
  • 焦点事件,当元素获得或失去焦点时触发;鼠标事件:当用户通过鼠标在页面上执行操作时触发;
  • 滚轮事件:当使用鼠标滚轮(或类似设备)时触发;
  • 文本事件:当在文档中输入文本时触发;
  • 键盘事件:当用户通过键盘在页面上执行操作时触发;
  • 合成事件:当为 IME(Input Method Editor,输入法编辑器)输入字符时触发;
  • 变动(mutation)事件:当底层 DOM 结构发生变化时触发。
  • 变动名称事件:当元素或属性名变动时触发。此类事件已经被废弃,没有任何浏览器实现它们

  除了这几类事件之外, HTML5 也定义了一组事件,而有些浏览器还会在 DOM 和 BOM 中实现其他专有事件。这些专有的事件一般都是根据开发人员需求定制的,没有什么规范,因此不同浏览器的实现有可能不一致。

  以下是《JavaScript高级程序设计》中 UI 事件和焦点事件的总结:

  UI 事件指的是那些不一定与用户操作有关的事件。这些事件在 DOM 规范出现之前,都是以这种或那种形式存在的,而在 DOM 规范中保留是为了向后兼容。

  焦点事件会在页面元素获得或失去焦点时触发。利用这些事件并与 document.hasFocus()方法及document.activeElement 属性配合,可以知晓用户在页面上的行踪。

转载于:https://www.cnblogs.com/crucify-lee/p/4536258.html

JavaScript 中的事件类型1(读书笔记思维导图)相关推荐

  1. JavaScript 中创建对象的方法(读书笔记思维导图)

    面向对象(Object-Oriented, OO)的语言有一个标志,那就是它们都有类的概念,而通过类可以创建任意多个具有相同属性和方法的对象.而 ECMAScript 中没有类的概念,所以我们可以使用 ...

  2. JavaScript 中的事件流和事件处理程序(读书笔记思维导图)

    JavaScript 程序采用了异步事件驱动编程模型.在这种程序设计风格下,当文档.浏览器.元素或与之相关的对象发生某些有趣的事情时,Web 浏览器就会产生事件(event). JavaScript ...

  3. 读书笔记思维导图用什么软件做

    阅读是每一位有基础文化的人都能掌握的技能,通过阅读书籍,人们可以源源不断获取崭新的知识与技能.在如今社会,读书的重要性愈加突出,一位读书万卷的人,不论在哪一个方面,都远比不爱读书的人更受人敬仰,也更容 ...

  4. 《HTML重构》读书笔记思维导图

    最近读了<HTML重构>这本书,以下做出自己的总结归纳,大家可以一起学习交流. 什么是重构?重构是在不改变程序行为的基础上进行小的改动是代码基本逐渐完善的过程,通常需要一些自动化工具的帮助 ...

  5. 《四大文明古国》读书笔记思维导图,感受人类文明

    历史的长河波澜壮阔.源远流长,四大文明古国作为这条汹涌的长河中耀眼的浪花,自古就被赋予了浓厚的神秘色彩.从两河流域的古巴比伦,到黄河流域的中国,每一寸土地都闪烁着远古文明的光辉.而作为华夏儿女,更值得 ...

  6. 《刻意练习》读书笔记思维导图精华版,探索成功的秘诀

    <刻意练习>如何从新手到大师是2016年11月机械工业出版社出版的图书,作者是安德斯·艾利克森.首次提出"提出概念的是佛罗里达州大学心理学教授.刻意练习听起来,很简单,但是你知道 ...

  7. JavaScript 中的事件类型3(读书笔记思维导图)

    Web 浏览器中可能发生的事件有很多类型.如前所述,不同的事件类型具有不同的信息,而" DOM3级事件"规定了以下几类事件. UI(User Interface,用户界面)事件:当 ...

  8. JavaScript 中的事件类型2(读书笔记思维导图)

    Web 浏览器中可能发生的事件有很多类型.如前所述,不同的事件类型具有不同的信息,而" DOM3级事件"规定了以下几类事件: UI(User Interface,用户界面)事件:当 ...

  9. JavaScript 中的事件类型5(读书笔记思维导图)

    Web 浏览器中可能发生的事件有很多类型.如前所述,不同的事件类型具有不同的信息,而" DOM3级事件"规定了以下几类事件. UI(User Interface,用户界面)事件:当 ...

最新文章

  1. cscope使用技巧
  2. jQuery中通过JSONP来跨域获取数据的三种方式
  3. CentOS7.1 KVM虚拟化之虚拟机添加磁盘
  4. 同事间竞争,你该如何对待?
  5. rsa实现js前台加密java后台解密
  6. 开发软件快捷键(持续更新中)
  7. android从本地服务器新浪云,GitHub - SinaCloudStorage/SinaStorage-SDK-Android: Android SDK For 新浪云存储...
  8. android获取组件id,Android 获取控件id的三种方式
  9. Scrapy爬取多层级网页内容的方式
  10. 计算机实验室安全员责任书,实验室安全目标责任书
  11. 【小专题】正交试验法设计测试用例
  12. 数据库文档生成工具-markdown格式
  13. 第一篇 关于2012百度开发者技术论坛大会总结
  14. 百度 orc识别图片转文字
  15. vue 给圆遮盖物添加文字 高德地图_【高德地图开发4】---增加覆盖物setMapTextZIndex...
  16. codevs 2977 二叉堆练习1x
  17. 在腾讯实习的五个月的一些思考与收获
  18. CHECKBOX用法
  19. 王汕7.10期货原油、外汇黄金指导、黄金走势分析及下周操作建议
  20. win10 R包安装报错:没有安装在arch=i386

热门文章

  1. unittest控制case执行顺序
  2. unity将遮挡人物的模型透明化_笔记
  3. 2021-11-24 micropython esp32休眠假死 唤醒 rtc nvs btree数据保持
  4. 计算机视觉 开源_年轻的计算机科学家分享了她的开源故事
  5. R语言中导入excel乱码的解决办法
  6. 10 Model Card 保证AI模型伦理道德的好工具
  7. GPU在高性能仿真计算中的应用
  8. Mac 安装MySQL到移动硬盘
  9. 前端 下载文件简易方法(兼容IE)
  10. 解决edge浏览器无法打开pdf文件问题