javascript - 白皮书 : Enqueue JS at very end of the loading site

标签 javascript php jquery wordpress woocommerce

我有一个脚本,它稍微改变了 div 的位置。为了正常工作,它必须在页面加载的最后加载 - 这是因为我的 WP 页面有几个不同的插件,其中一些使用 js 在页面上显示内容,移动该内容是我想要实现的。

我尝试将 999999 优先级设置为 add_action 参数,还尝试使用 js 函数 settimeout 作弊,但这不是重点 - 它必须每次都有效,而我的“解决方案”并没有为我提供。总是有一些链接脚本比我的晚加载,超时有时有效,但只是有时...

我认为可能会发生冲突的插件:Woocommerce、Easy FancyBox、Instagram Feed。

谢谢帮助!

[编辑]

所以,我需要改变这个:

<div class="foo">
    <div class="bar">
        <div class="destination">
        </div>
    </div>
    <div class="origin">
    </div>
</div>

对此:

<div class="foo">
    <div class="bar">
        <div class="destination">
            <div class="origin">
            </div>
        </div>
    </div>
</div>

我的js代码是:

var from = document.getElementsByClassName("origin");
jQuery("window").on("load",function(){
    jQuery.each(from, function(i, el) {
        jQuery(el.parentNode.parentNode).find(jQuery(".destination"))[0].appendChild(el);
    });
});

我唯一需要的是在所有 js 文件之后加载它。

此外,有时有效的函数看起来是这样的:

var from = document.getElementsByClassName("origin");
setTimeout(function() {
    jQuery.each(from, function(i, el) {
        jQuery(el.parentNode.parentNode).find(jQuery(".destination"))[0].appendChild(el);
    });
},1);

最佳答案

而不是使用 $( document ).ready(function() { 尝试使用 $( window ).on( "load", function() {

关于javascript - 白皮书 : Enqueue JS at very end of the loading site,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47519089/

相关文章:

javascript - Wordpress jQuery 错误 &#038

javascript - onClick 中的多行?

php - 设置文本框的最大值和最小值

javascript - jquery/ajax 使用用户输入作为条件运行 php 查询,然后显示查询结果而不刷新页面

javascript - 如何从一个输入标签添加/上传/选择多个文件?

javascript - JS如何用单行设置范围之外的值

javascript - 按照 php + javascript 中选中的复选框的顺序设置订单号

php - Supervisord 仅生成 1 个实例

jquery - 浏览器生成的随机 <li> 标签

javascript - 如何更新jPlayer标题?