javascript - Js 事件在 Elementor 插件中不起作用

标签 javascript wordpress elementor

我正在为 WordPress 媒体库编写一个扩展,我需要向媒体库添加一个按钮,点击该按钮将打开一个模式窗口,用户可以从中选择图片。

看截图

目前,在使用 Elementor 插件编辑页面时,当库打开时单击按钮时不会触发该事件。 JS文件包含如下

public function registerAssets()
{
    //add_action('admin_enqueue_scripts', [$this, 'scripts']);
    add_action('wp_enqueue_scripts', [$this, 'scripts']);
}

public function scripts()
{
    wp_register_script( 'cbi-index-js', SCRIPTS_URI . 'index.js', [ 'elementor-frontend' ], '1.0.0', true );
    wp_enqueue_script('cbi-index-js');
}

在管理区域中一切正常,但在 Elementor 中,问题可能出在命名空间中。

JS文件

jQuery(document).ready(function ($){
  $('#db-upload-btn').on('click', function (e){
      alert(111)
  })
})
$('#db-upload-btn').on('click', function (e){
    alert(222)
})
console.log(333)

如您所见,我还向控制台输出了 console.log (333),当我重新加载页面时,在 Elementor 面板中,向控制台输出了 333,这表明文件已连接,但为什么当我单击按钮时,处理程序不起作用,但我可以弄清楚。

有人可以帮我解决这个问题吗?

最佳答案

请将代码中的所有“$”字符替换为“jQuery”,然后重试!

关于javascript - Js 事件在 Elementor 插件中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66246992/

相关文章:

javascript - 如何创建一个 "Bookmark this page"按钮?

javascript - jQuery 滚动事件 : how to determine amount scrolled (scroll delta) in pixels?

javascript - 选择某些字符正则表达式之间的文本

javascript - 页面上 "layers"中有两个语义侧边栏?

wordpress - 使用 Elementor,如何将文本环绕其他元素?

javascript - 使用 JavaScript 脚本加载外部 HTML(通过 WordPress 中的嵌入代码)

php - 检查当前页面是否是wordpress中的类别页面?

html - 如何将字体样式导入css并在页面中使用?

CSS - Firefox 中 slider 的宽度

node.js - 安装 elementor 时出错