浅析javascript中的Event事件

浅析 JavaScript 中的 Event 事件

什么是 Event 事件?

事件是 JavaScript 中一种重要的交互方式。页面的许多行为(如点击、滚动、拖拽、键盘按下等)都可以通过事件来触发相应的 JavaScript 代码。

JavaScript 中的 Event 对象表示事件,它包含了导致该事件发生的行为以及相关的信息。Event 对象是由浏览器自动创建的,我们可以通过监听事件来获取该对象。

常用的 Event 事件

以下是一些常用的 Event 事件:

  • click:鼠标单击事件。
  • mouseover:鼠标移入事件。
  • keydown:键盘按键按下事件。
  • scroll:页面滚动事件。

Event 事件监听

通过 addEventListener 方法可以监听 Event 事件,该方法通常调用在 DOM 元素上。

document.addEventListener('click', function(event) {
  console.log('鼠标点击事件');
});

上述代码将在文档中任意位置接收到鼠标单击事件时输出 鼠标点击事件

Event 事件处理

阻止默认行为

有些事件在触发时会有默认行为,如 <a> 标签的点击会跳转网页,这时我们可以通过 Event 对象的 preventDefault 方法 来阻止该行为的发生。

document.querySelector('a').addEventListener('click', function(event) {
  event.preventDefault();
});

上述代码将在 <a> 标签被点击时不跳转,而是停留在本页面。

阻止事件冒泡

事件冒泡是指事件从最底层开始向着最外层的父元素冒泡。有时我们希望阻止事件冒泡,即在当前元素内部处理完事件后不再向外传递。

<div class="outer">
  <div class="inner">
    <button>点击</button>
  </div>
</div>
document.querySelector('.outer').addEventListener('click', function(event) {
  console.log('outer 被点击了');
});
document.querySelector('.inner').addEventListener('click', function(event) {
  console.log('inner 被点击了');
  event.stopPropagation();
});
document.querySelector('button').addEventListener('click', function(event) {
  console.log('button 被点击了');
});

上述代码在点击按钮时,会先触发 inner 元素的点击事件,再停止事件冒泡,因此不会触发 outer 元素的点击事件。最终只输出 inner 被点击了button 被点击了

示例说明

示例一:鼠标悬浮事件

<p id="text">鼠标悬浮在我身上</p>
document.querySelector('#text').addEventListener('mouseover', function(event) {
  event.target.innerText = '谢谢你的关注';
});

上述代码在鼠标悬浮在 <p> 标签上时,将该元素的文字内容修改为 谢谢你的关注

示例二:键盘快捷键

document.addEventListener('keydown', function(event) {
  if (event.key === 'Enter') {
    console.log('你按下了 Enter 键');
  }
});

上述代码在按下 Enter 键时输出 你按下了 Enter 键。这样的效果既可以应用在网页的搜索框上,也可以用在游戏的方向键上。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:浅析javascript中的Event事件 - Python技术站

(0)
上一篇 2023年6月10日
下一篇 2023年6月10日

相关文章

  • JavaScript中的console.trace()函数介绍

    JavaScript中的console.trace()函数介绍 简介 console.trace() 函数用于在控制台输出当前代码运行的栈信息,即函数调用时的函数调用链。它可以帮助我们更好地理解程序的执行过程,找出代码中的错误或瓶颈所在。 语法 console.trace(); 示例 示例一 我们可以通过一个示例来演示 console.trace() 函数的…

    JavaScript 2023年6月11日
    00
  • JavaScript数据类型转换的注意事项

    JavaScript中的数据类型转换是非常常见的操作,但是在进行类型转换时需要注意一些细节,否则就会出现一些不期望的结果。本攻略将详细讲解JavaScript中数据类型转换的注意事项。 1. 显式类型转换 在JavaScript中,显式类型转换又称为强制类型转换,是指通过一些内置函数将某一数据类型强制转换为其他数据类型。 1.1 Number() Numbe…

    JavaScript 2023年5月18日
    00
  • 如何确保JavaScript的执行顺序 之jQuery.html并非万能钥匙

    如何确保JavaScript的执行顺序 之jQuery.html并非万能钥匙 一、背景 在前端开发中,我们经常会遇到多个JS文件需要按照特定的顺序加载执行,否则会出现各种奇怪的问题。其中,使用jQuery.html方法加载外部JS文件,不同的浏览器会有不同的表现,这给我们的开发带来了一定的困扰。本文将针对这个问题,通过归纳总结,给出可靠的解决方案。 二、问题…

    JavaScript 2023年5月27日
    00
  • 用js读写cookie的简单方法(推荐)

    以下是详细讲解“用js读写cookie的简单方法(推荐)”的完整攻略: 1. 什么是cookie 1.1 定义 cookie 是一种在客户端存储数据的小文件。在 HTTP 协议中,Web 服务器可以向客户端发送一个 Set-Cookie 的响应头,来告诉客户端保存这个 cookie。之后客户端每次请求响应都会带上这个 cookie,用来告诉服务器用户是谁。 …

    JavaScript 2023年6月11日
    00
  • ES6新特征数字、数组、字符串

    ES6(ECMAScript 2015)是JavaScript的一项更新,在数字、数组、字符串等方面引入了许多新特性。本文将详细讲解ES6的数字、数组、字符串新特性。 ES6新特性:数字 二进制和八进制字面量 ES6引入了二进制和八进制字面量,分别使用0b或0B以及0o或0O前缀表示。例如: let binary = 0B1101; // 13 let oc…

    JavaScript 2023年5月27日
    00
  • Ajax提交post请求案例分析

    Ajax提交Post请求的完整攻略 什么是Ajax提交Post请求? Ajax是Asynchronous JavaScript and XML(异步的Javascript和XML)的缩写。它是一种用于创建更快、更好、更友好的Web应用程序的Web开发方法。 使用AJAX可以在不重新加载整个Web页面的情况下更新页面的内容。其中,Ajax的一种常见用法是通过P…

    JavaScript 2023年6月11日
    00
  • JavaScript在form表单中使用button按钮实现submit提交方法

    JavaScript是一种高级的编程语言,广泛用于web开发。在form表单中,我们可以使用button按钮实现提交方法。这里,我将向你介绍如何使用JavaScript来实现这个过程的完整攻略。 步骤一:创建form表单 首先,我们需要创建一个form表单。具体代码如下所示: <form id="myForm" action=&qu…

    JavaScript 2023年6月10日
    00
  • javascript制作幻灯片(360度全景图片)

    准备工作 在制作幻灯片之前,我们需要准备以下几个工作: HTML页面模板 360度全景图片 JavaScript库Three.js 其中,HTML页面模板是整个幻灯片的基础,而360度全景图片是幻灯片展示的内容,而JavaScript库Three.js是帮助我们实现幻灯片效果的工具。 引入Three.js库 首先需要在HTML页面中引入Three.js库,具…

    JavaScript 2023年6月11日
    00
合作推广
合作推广
分享本页
返回顶部