为什么$for jQuery不起作用?

时间:2012-06-14 作者:ilyo

我使用以下方法将jquery插件排队:

<?php
    function my_scripts_method() {
        wp_enqueue_script(
            \'custom functions\',
            get_template_directory_uri() . \'/js/main.js\',
            array(\'jquery\'),
            \'1\',
            true
        );
        wp_enqueue_script(
            \'dotdotdot & lightbox\',
            get_template_directory_uri() . \'/js/plugins.js\',
            array(\'jquery\'),
            \'1\',
            true
        );
    }
    add_action(\'wp_enqueue_scripts\', \'my_scripts_method\');
我不知道这有什么关系,但jquery只响应调用jquery(... 而不是$(.... 为什么会这样?

2 个回复
最合适的回答,由SO网友:Eugene Manuilov 整理而成

对脚本使用闭包:

(function($){
    $(document).ready(function() {
        // do something...
    });
})(jQuery);
使用jQuery是一种安全的方法。

SO网友:Milo

WordPress提供的jQuery处于noConflict模式,以避免与可能使用$ 作为其对象引用。

看见wp_enqueue_script: jQuery noConflict wrappers 了解更多信息。

结束

相关推荐

如何告诉WordPress页面上存在jQuery,以避免通过wp_enQueue_脚本重复

为了减少http请求,我将我的主题使用的所有脚本合并到一个简化的脚本中。每次保存主题选项时的js文件。此中的一个文件。js是jQuery库。我没有将jQuery作为一个单独的文件(使用wp\\u enqueue\\u脚本)包含,而是将wordpress核心jQuery文件作为此主机输出流的一部分。js文件问题是,由于我没有使用wp\\u enqueue\\u scripts()加载jQuery,因此有可能通过一个不知道它已经存在的插件在页面上包含多次。我可以设置一个标志以便WordPress知道页面上已经