【问题标题】:Defer Javascript Load Order延迟 Javascript 加载顺序
【发布时间】:2018-05-28 00:31:23
【问题描述】:

我有一个 wordpress 我有各种脚本。

我已在标题中加入我的 jquery 和 jquery-ui

wp_enqueue_script('jquery', 'https://cdnjs.cloudflare.com/ajax/libs/jquery/1.12.4/jquery.min.js', null, null, false);
wp_enqueue_script('jquery-ui', 'https://code.jquery.com/ui/1.10.0/jquery-ui.min.js', null, null, false);

跟随我的脚本

wp_enqueue_script('scripts', 'https://eg1234.cloudfront.net/wp-content/scripts/scripts.js', ['jquery','jquery-ui'], '', true);

我还有延迟脚本功能,可以将defer="defer" onload src="..." 添加到我的所有脚本中

但是我收到一个错误Uncaught TypeError: $(...).accordion is not a function 这是我的脚本文件中并且依赖于 jquery-ui,我相信延迟脚本是在加载 jquery-ui 之后?

有什么帮助吗?

【问题讨论】:

    标签: javascript jquery wordpress jquery-deferred


    【解决方案1】:

    您是否将 JavaScript 调用封装在

    中
    $(function() {
        console.log( "ready!" );
    });
    

    http://learn.jquery.com/using-jquery-core/document-ready/

    【讨论】:

      【解决方案2】:

      需要将 jQuery 设置为 jQuery UI 的依赖项。 jQuery UI 等插件的加载顺序很重要,jQuery 首先加载

      wp_enqueue_script('jquery-ui', 'https://code.jquery.com/ui/1.10.0/jquery-ui.min.js', ['jquery']);
      

      还要确保页面中只加载了一个版本的 jQuery。如果在 jQuery UI 之后加载了另一个版本,它将丢失

      【讨论】:

        猜你喜欢
        • 2016-02-05
        • 1970-01-01
        • 1970-01-01
        • 2012-05-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-02-15
        相关资源
        最近更新 更多