WordPress的jQuery即使在无冲突模式下也不起作用

时间:2018-09-17 08:46:25

标签: javascript php jquery wordpress

我想在wordpress中单击div时显示一个警告框 在functions.php中,我编写了代码

function load_script_files(){
  wp_enqueue_script('myjs',get_stylesheet_uri().'/js/scripts.js',array('jquery'), '1.0.0', true );
}
add_action('wp_enqueue_scripts', 'load_script_files')

;

在scripts.js中,我编写了以下js代码

jQuery(".click-div").click(function(){
    alert("The div was clicked.");
})

但是它没有显示任何警报框。可能是什么问题呢?

2 个答案:

答案 0 :(得分:0)

尝试此代码。

您需要使用get_stylesheet_directory_uri()而不是get_stylesheet_uri()

get_stylesheet_uri()会返回样式表网址。

function load_script_files(){
  wp_enqueue_script('myjs', get_stylesheet_directory_uri().'/js/scripts.js',array('jquery'), '1.0.0', true );
}
add_action('wp_enqueue_scripts', 'load_script_files');

答案 1 :(得分:0)

如果两个文件都已真正加载(请检查浏览器控制台中的“网络”选项卡),我怀疑问题是您尝试将事件侦听器附加到尚不存在的对象上。

一种简单的解决方案是在DOM完全加载后执行代码:

jQuery(document).ready(function(){
    jQuery(".click-div").click(function(){
       alert("The div was clicked.");
    })
});