在 WordPress 中使用 jQuery 将 HTML 移至父级 - 已关闭

Posted

技术标签:

【中文标题】在 WordPress 中使用 jQuery 将 HTML 移至父级 - 已关闭【英文标题】:Moving HTML to a parent using jQuery in WordPress - CLOSED 【发布时间】:2020-09-20 07:16:56 【问题描述】:

我正在使用 WooCommerce 和 Divi 主题创建一个 WordPress 网上商店。

在 PC 上一切都很好,但在移动设备上,主题将我的自定义移动购物车数量计数器放在移动菜单下拉菜单中。这使得它在您打开移动菜单之前不可见。 (它使用 javascript 在折叠时将 display:none 添加到父级。)

现在我正在尝试在 html 中向上移动购物车数量计数器,以便它保持可见。

这是我正在使用的代码。但由于某种原因,它没有生效。

<script type="text/javascript">
    (function() 
        $('#mobile_menu li.cart_menu').appendTo('#main-header');
    )(jQuery);
</script>

我只想让代码 sn-p 自动触发。

我做了一些测试,这段代码 sn-p 确实有效,但只有在添加到购物车操作被激活后才会触发:

<script type="text/javascript">
    (function() 
        $('body').on('added_to_cart',
                     $('#mobile_menu li.cart_menu').appendTo('#main-header');
    );
    )(jQuery);
</script>

我在这里做错了什么?

更新:

此脚本有效:

<script type="text/javascript">
    (function($) 
        $(window).on('load', function() 
            $('#mobile_menu li.cart_menu').appendTo('#main-header');
        );
    )(jQuery);
</script>

【问题讨论】:

第二个 sn-p 在语法不正确时如何工作(不平衡的括号 - 一个 s 和两个 s)? 【参考方案1】:

将您的代码放入 ready 函数中,如下例所示:

$(document).ready(function() 
    (function() 
        $('#mobile_menu li.cart_menu').appendTo('#main-header');
    )(jQuery);
);

【讨论】:

这对我不起作用。它没有生效。这可能是什么原因? 是否需要在脚本中添加延迟层?【参考方案2】:

我找到了解决办法。

此脚本有效:

(function($)
    $(window).on('load', function() 
        $('#mobile_menu li.cart_menu').appendTo('#main-header');
    );
)(jQuery);

【讨论】:

以上是关于在 WordPress 中使用 jQuery 将 HTML 移至父级 - 已关闭的主要内容,如果未能解决你的问题,请参考以下文章

将 jQuery 插件安装到 wordpress 中

在 WordPress/jQuery 中添加

在 WordPress 中包含一个 jQuery 插件

在 WordPress 中使用自定义 JQuery 脚本而不更新主题 functions.php

如何在jquery中编写if else if语句,其中条件由wordpress选项设置设置

如何将此 jQuery 脚本添加到我的 Wordpress