You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将给定的jQuery事件委托代码改写为原生Vanilla JS

jQuery 转原生 Vanilla JS 实现方案

你提供的jQuery代码实现的是文档级点击事件委托功能,监听全局点击事件,当点击元素匹配.btn类选择器时触发回调。

原jQuery代码

$(document).on('click', '.btn', function() {
  // 回调业务逻辑
})

等效原生JS写法

document.addEventListener('click', function(e) {
  // 匹配点击元素是否为.btn
  if (e.target.matches('.btn')) {
    // 此处写入原回调逻辑,e.target为触发事件的按钮元素,等同于jQuery中的$(this)指向
  }
})

场景适配说明

如果你的.btn元素内部包含子元素(比如图标、文字span),点击子元素时e.target会指向子元素而非.btn本身,可替换为以下写法兼容这种场景:

document.addEventListener('click', function(e) {
  const targetBtn = e.target.closest('.btn');
  if (targetBtn) {
    // 回调逻辑,targetBtn即为匹配到的.btn元素
  }
})

内容的提问来源于stack exchange,提问作者Rick

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 13:36:04