wordpress - jQuery 在插件中不起作用,但在其他任何地方都有效?

wordpress - jQuery doesn't work in plug in, but works everywhere else?

很抱歉这个简单的问题,(嘿,简单的代表!)但我刚接触 PHP 1 天。出于必要,我必须创建一个 wordpress plugin/widget。我已经在 header 中排队 jquery:

  `<?php wp_enqueue_script("jquery"); ?>`

并创建了一个 class 用于在插件中点击。

  jQuery('.court').click(function () {
      alert(jQuery(this).attr('id'));
   });

简单的东西,如果我将代码放在页脚中(除了一些 JQ 什么都没有),它就可以工作。如果它在插件中,它就不起作用。 Javascript警报('boom');在插件中工作。

为了在插件中使用 jquery 我错过了什么?我显然不想把它放在页脚,因为它不会被打包在那里。

您需要使用 wp_enqueue_script 并明确指定您的脚本依赖于 jquery。然后 WordPress 将确保稍后加载您的脚本,从而使 jQuery 对象可用。

出于需要,我必须创建一个 wordpress plugin/widget。 您是从头开始编写插件吗?如果是这样;尝试在插件的主文件中的任意位置添加以下代码:

    <?php
        function myPluginScripts() {
            wp_enqueue_script( 'jquery-my-plugin', get_site_url() . "/wp-includes/js/jquery/jquery.js", array(), '');

            // IN THIS FUNCTION, YOU CAN ADD OTHER JS FILES AS WELL LIKE SO 
            // UNCOMMENT THE LINE BELOW & CHANGE THE VALUES IF YOU NEED TO
            // wp_enqueue_script( 'my-plg-js', 'path/to/my-plg.js', array('jquery'), '');
       }

       add_action('wp_enqueue_scripts', 'myPluginScripts');