jQuery .load 变量为 url

jQuery .load with variable as url

我正在尝试通过 jQuery 构建的移动菜单栏将外部 php file/widget 加载到另一个 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');
}

虽然它揭示了一些额外的问题,@thebreiflabb 对原始问题提供了极大帮助,并基本上回答了原始问题。所以我会认为它通过评论关闭。

问题是在 load 被调用时没有 class 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');
}