jQuery .load with variable as url


jQuery .load with variable as url

我正试图通过jQuery构建的移动菜单栏将一个外部php文件/小部件加载到另一个php文件中。菜单栏是在下面的代码中调用的<div class="slicknav_menu">。在前端,我可以看到变量加载博客url,但pluginDir似乎没有在$函数中加载它。

我仍在掌握正确的语法。我做错了什么?.load是否接受变量?

var pluginDir = "<?php bloginfo('url'); ?>";
if (document.documentElement.clientWidth < 1030) {
    $(".slicknav_menu").load(pluginDir + '/wp-content/plugins/woocommerce-cart-dropdown/cart-dropdown.php');
}

问题是在调用load时没有slicknav_menu类的元素。jQuery运行noConflict(),将$设置回未定义,使其根本不尝试加载。

通过在元素添加到DOM后移动$(".slicknav_menu").load(pluginDir + '/wp-content/plugins/woocommerce-cart-dropdown/cart-dropdown.php');,并使用jQuery代替$,它将正确加载。

只取原始源代码的相关部分,给出解决方案:

var pluginDir = "<?php bloginfo('url'); ?>";
jQuery('#menu-main-menu').slicknav();
if(document.documentElement.clientWidth < 1030) {
    jQuery(".slicknav_menu").load(pluginDir + '/wp-content/plugins/woocommerce-cart-dropdown/cart-dropdown.php');
}

尽管它揭示了一些额外的问题,@thebreifab在最初的问题上提供了巨大的帮助,并基本上回答了这个问题。所以我会通过评论认为它已经结束了。