当前位置:首页 > JavaScript

js实现on

2026-03-15 06:31:34JavaScript

on 事件监听实现

在JavaScript中实现事件监听可以通过多种方式完成。以下是常见的几种方法:

addEventListener 方法

element.addEventListener('eventName', function(event) {
  // 事件处理逻辑
});

直接属性赋值

element.onclick = function(event) {
  // 点击事件处理逻辑
};

HTML内联事件

js实现on

<button onclick="handleClick()">点击</button>
<script>
function handleClick() {
  // 处理函数
}
</script>

事件委托模式

对于动态元素或大量子元素,使用事件委托更高效:

parentElement.addEventListener('click', function(event) {
  if(event.target.matches('.child-selector')) {
    // 处理特定子元素的事件
  }
});

自定义事件触发

创建和触发自定义事件:

js实现on

// 创建事件
const event = new Event('customEvent');

// 监听事件
element.addEventListener('customEvent', function() {
  console.log('自定义事件触发');
});

// 触发事件
element.dispatchEvent(event);

一次性事件监听

使用once选项让监听器只执行一次:

element.addEventListener('click', function() {
  console.log('只会执行一次');
}, { once: true });

事件对象常用属性

事件处理函数接收的事件对象包含有用信息:

element.addEventListener('click', function(event) {
  event.target;      // 触发事件的元素
  event.currentTarget; // 当前处理事件的元素
  event.preventDefault(); // 阻止默认行为
  event.stopPropagation(); // 阻止事件冒泡
});

移除事件监听

需要移除事件监听时,必须使用相同的函数引用:

const handler = function() {
  console.log('事件处理');
};

element.addEventListener('click', handler);
// 后续移除
element.removeEventListener('click', handler);

标签: json
分享给朋友:

相关文章

js 进度条的实现

js 进度条的实现

使用 HTML 和 CSS 创建基础进度条 HTML 结构可以简单使用一个 div 元素作为容器,内部嵌套另一个 div 表示进度: <div class="progress-containe…

js jquery

js jquery

jQuery 简介 jQuery 是一个快速、简洁的 JavaScript 库,简化了 HTML 文档遍历、事件处理、动画设计和 Ajax 交互。它兼容多种浏览器,提供易于使用的 API,使开发者能够…

js实现祖玛

js实现祖玛

实现祖玛游戏的核心思路 祖玛游戏的核心玩法是发射彩色珠子,形成三个或以上相同颜色的珠子即可消除。以下是使用JavaScript实现的基本框架。 游戏初始化 创建画布并初始化游戏状态: const…

js实现图

js实现图

JavaScript 实现图的常用方法 在 JavaScript 中,图(Graph)可以通过多种方式实现,常见的包括邻接表(Adjacency List)和邻接矩阵(Adjacency Matrix…

js实现授权

js实现授权

授权流程设计 授权流程通常涉及前端与后端的交互,常见方案包括OAuth2.0、JWT等。以JWT为例的典型流程: 用户提交凭证(如用户名密码)到认证服务 服务端验证通过后生成包含用户信息的J…

js实现吸色

js实现吸色

使用Canvas实现吸色功能 通过Canvas的getImageData方法获取像素颜色数据。创建一个Canvas元素,将目标图像绘制到Canvas上,通过鼠标事件获取坐标对应的颜色值。 c…