Wordpress子主题没有通过JQuery应用样式


Wordpress child theme not applying style via JQuery

我正在排队脚本,它将类"first-half"应用于ul#menu-main下所有li元素的前半部分。class没有显示

What I have:

在"主题/responsive-child/js/menu.js":

$(document).ready(function(){
    var menuItems = $("ul#menu-main li");
    menuItems = menuItems.slice(0, Math.floor(menuItems.length/2)).addClass("first-half");
});

在子主题的"functions.php"中:

add_action('init', 'menuscript_init');
function menuscript_init() {
    wp_enqueue_script( 'menuscript_init', '<?php get_stylesheet_directory_uri() ?>/js/menu.js'); 
}

请指出我做错了什么

change

<?php get_stylesheet_directory() ?>

<?php get_template_directory() ?>
我可以帮你。你的问题是在functions。php中,你必须有这样的东西:
wp_register_script( 'editing_unit_javascript', get_stylesheet_directory_uri().'/js/menu.js', array('jquery','bootstrap'));
wp_enqueue_script( 'menu_javascript' );

编辑:你可以从数组中删除'bootstrap',因为你要使用jquery在你的javascript文件

change jquery

jQuery(document).ready(function(){
    var menuItems = jQuery("ul#menu-main li");
    menuItems = menuItems.slice(0, Math.floor(menuItems.length/2)).addClass("first-half");
});

并修改wp_enqueue_script()为:

wp_enqueue_script( 'menuscript_init', get_stylesheet_directory_uri().'/js/menu.js', array('jquery'));

希望对你有用