0

我在 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

4 回答 4

1

最好坚持关于脚本的法典。

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' );
}
于 2012-12-02T22:57:46.127 回答
0

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

正如@Zlatev 指出的那样,它必须封装在一个动作挂钩中。检查 Codex 以了解真正的官方方式。

此问答可能会有所帮助:以正确的方式包含 jQuery 和 jQuery 文件

于 2012-12-02T23:54:55.080 回答
0

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

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

于 2012-12-03T00:10:54.240 回答
-1

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

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

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

于 2012-12-02T22:47:23.543 回答