Wordpress:当jquery入队时,你如何让jQuery脚本工作?

时间:2012-12-02 22:35:51

标签: jquery wordpress

我在header.php文件中使用了这个小小的jQuery片段:

<script>
jQuery(function($){
 $('#menu-classes h3 a').removeAttr("href");
});
</script>

当我包含这样的jQuery时,它工作正常:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>

但如果我将jQuery包含在“正确的”Wordpress方式(入队)中,它就不起作用了,如下所示:

<?php wp_enqueue_script('jquery'); ?>

知道我做错了吗?

4 个答案:

答案 0 :(得分:1)

最好坚持使用有关脚本的codex。

wp_enqueue_script

  

使用wp_enqueue_scripts操作调用此函数,或使用admin_enqueue_scripts在管理端调用它,或使用login_enqueue_scripts登录屏幕。

那就是。

add_action( 'wp_enqueue_scripts', 'enqueue_theme_scripts' );

function enqueue_theme_scripts() {
 wp_enqueue_script( 'jquery' );
}

答案 1 :(得分:0)

因为正确的方法是在主题的functions.php中进行,而不是在模板中。

当@Zlatev指出时,它必须封装在一个动作钩子里面。检查Codex的真正的官方方式。

此Q&amp; A可能会有所帮助:Including jQuery and jQuery files the correct way

答案 2 :(得分:0)

您还需要在无冲突模式下使用它,

  

jQuery(document).ready(function($){.. stuff ...}

答案 3 :(得分:-1)

以防万一其他人遇到这个问题:

确保您的脚本包含在<?php wp_head(); ?>之后。

当然,这是在Wordpress中包含脚本的非官方方式,如果您使用插件,可能会产生脚本冲突。官方的方法是在functions.php中注册脚本,然后将其排队。