第八篇-Javascript 事件

简介: 第八篇-Javascript 事件

JavaScript 事件的概念

JavaScript事件是指在网页中发生的特定操作或交互,例如点击按钮、输入文本、滚动页面等。当用户执行这些操作时,浏览器会触发相应的事件,并且可以通过JavaScript代码来捕获并对事件做出响应。

JavaScript 事件绑定

1、HTML属性绑定: 在HTML标签上直接使用事件属性,例如:

<button οnclick="myFunction()">Click me</button>

2、DOM方法绑定: 使用JavaScript中的DOM方法,在代码中通过获取元素的引用,然后使用addEventListener()方法来绑定事件,例如:

var myButton = document.getElementById("myButton");
myButton.addEventListener("click", myFunction);


3、on属性绑定: 使用元素的on属性来直接绑定事件,例如:

var myButton = document.getElementById("myButton");
myButton.onclick = myFunction;

JavaScript 事件流

JavaScript事件流是指浏览器中事件的传播顺序。当一个元素上发生了一个事件,比如点击事件,浏览器会按照特定的顺序传播事件,直到达到最终目标元素或者冒泡到顶层的文档对象。

JavaScript事件流有三个阶段:捕获阶段目标阶段冒泡阶段

  1. 捕获阶段:事件从顶层文档对象开始,一直向下传播到触发事件的元素。这个阶段不会触发任何事件处理函数,只是把事件传播给目标元素。
  2. 目标阶段:事件到达触发事件的元素,触发该元素上绑定的事件处理函数。
  3. 冒泡阶段:事件从目标元素开始,向上冒泡到顶层文档对象。在这个阶段,事件会触发沿途的所有元素上绑定的事件处理函数。

在绑定事件处理函数时,可以使用addEventListener()方法指定事件捕获或事件冒泡阶段进行处理。默认情况下,addEventListener()方法是通过事件冒泡阶段进行处理的。例如:

element.addEventListener('click', handleEvent, true);  // 使用事件捕获阶段进行处理
element.addEventListener('click', handleEvent, false);  // 使用事件冒泡阶段进行处理(默认)

JavaScript 事件对象

JavaScript 事件对象是在事件触发时自动创建的,它包含了关于事件的信息,比如触发事件的元素、事件的类型、鼠标的位置等。在事件处理函数内部,可以通过参数来访问事件对象。

事件对象有一些常用的属性和方法,下面列举几个常用的属性:

      1、event.target:获取触发事件的元素。

      2、event.type:获取事件的类型。

      3、event.clientX / event.clientY:获取鼠标在窗口中的水平/垂直坐标。

      4、event.keyCode:获取按下的键盘按键的键码。


相关文章
|
1天前
|
JavaScript 前端开发
JavaScript 中的三种事件模型
JavaScript 中的事件模型主要有三种: 传统事件模型(DOM Level 0) 标准事件模型(DOM Level 2) IE 事件模型(非标准,仅限于旧版本的 Internet Explorer)
8 1
|
7天前
|
JavaScript 前端开发
杨老师课堂之JavaScript悬浮事件(鼠标移入移出事件)
杨老师课堂之JavaScript悬浮事件(鼠标移入移出事件)
14 1
|
8天前
|
JavaScript
Vue.js中使用.self修饰符来限制事件处理程序的作用域
Vue.js中使用.self修饰符来限制事件处理程序的作用域
|
9天前
|
JavaScript 前端开发
JavaScript弹窗事件
JavaScript弹窗事件
12 0
|
9天前
|
JavaScript 前端开发
JS实现移动端的轮播图滑动事件
JS实现移动端的轮播图滑动事件
16 0
|
10天前
|
数据采集 JavaScript 前端开发
理解并应用:JavaScript响应式编程与事件驱动编程的差异
了解JavaScript的响应式编程与事件驱动编程至关重要。事件驱动编程基于事件触发函数执行,如用户交互或系统事件。响应式编程则关注数据流变化,利用Observables自动响应更新。在爬虫代理IP的Web Scraping示例中,两者分别通过axios和rxjs显示了数据抓取的不同处理方式。掌握这两者能提升异步操作的效率和代码质量。
理解并应用:JavaScript响应式编程与事件驱动编程的差异
|
12天前
|
前端开发 JavaScript 数据处理
在JavaScript中,异步函数是指那些不会立即执行完毕,而是会在未来的某个时间点(比如某个操作完成后,或者某个事件触发后)才完成其执行的函数
【6月更文挑战第15天】JavaScript中的异步函数用于处理非同步任务,如网络请求或定时操作。它们使用回调、Promise或async/await。
22 7
|
13天前
|
JavaScript 前端开发
JS的监听事件
JS的监听事件
|
13天前
|
JavaScript 前端开发
JavaScript事件
JavaScript事件
|
1月前
|
消息中间件 存储 设计模式
JavaScript发布订阅模式:实现事件驱动编程!
JavaScript发布订阅模式:实现事件驱动编程!