前端面试 第二篇 js 事件

💡 原文中文,约14400字,阅读约需35分钟。
📝

内容提要

本文讲述了作者学习JavaScript的经历和对JavaScript事件的理解,包括事件概念、类型、处理程序、事件流和模型。还介绍了DOM0、DOM2和IE事件模型的特点和区别,并给出了示例代码。最后总结了行内绑定和addEventListener绑定事件的执行顺序和优先级。

🎯

关键要点

  • 作者回顾了自己学习JavaScript的经历,强调了对JavaScript事件的理解。
  • JavaScript事件是Web页面中产生的交互性动作或状态改变,包括鼠标、键盘、窗口等事件。
  • 事件源是导致事件产生的目标或组件,事件目标是事件相关信息的对象。
  • 事件处理程序是确定控件如何响应事件的过程。
  • 事件流包括捕获阶段、目标阶段和冒泡阶段,描述了事件在DOM树中的传递和处理方式。
  • DOM0事件模型是早期的事件处理方式,只支持冒泡阶段,且只能绑定一个事件处理器。
  • DOM2事件模型引入了事件流的概念,支持多个事件监听器和更灵活的事件处理。
  • IE事件模型是特有的事件处理机制,只支持目标阶段和冒泡阶段。
  • 行内绑定事件的优先级高于通过addEventListener绑定的事件,后者在冒泡或捕获阶段执行。
  • removeEventListener用于移除之前通过addEventListener绑定的事件监听器。
  • dispatchEvent用于在指定元素上触发事件,模拟用户行为或触发自定义事件。
➡️

继续阅读