javascript - 将 jQuery 函数分成异步组

标签 javascript jquery asynchronous web

这是一个寻找方法/解决方案来解决以下要求的问题:

  • 您有一个运行 jQuery 的网站
  • 您网站上的所有 jQuery 函数都可以分为两组:a) 业务相关逻辑(本地函数,如导航等)和 b) 用于获取不太重要内容的函数(如广告) ),我们称之为 a) GROUP L 和另一个 GROUP E(用于外部)。
  • 目的是确保 E 组的延迟不会妨碍 L 组的执行,因此 L 组和 E 组应该并行运行,不会互相影响。

如何实现这一目标?

非常简单的例子:

本地组 L:

<script>
  $(document).ready(function() {
    ... local functions, e.g. event listeners for your local navigation ...
  }
</script>

E组: 外部各方提供的任何 JavaScript

<script>
  $(document).ready(function() {
    ... external java script code, e.g. Advertiser JS-snippets ...
  }
</script>

最佳答案

您可以使用 module patterns 来完成此操作:

(function(main, $, undefined){

    GROUP_L = {
        group_l_variable : null,
        group_l_function : function(data){
            //... local functions, e.g. event listeners for your local navigation ...
        },
    }
    GROUP_E = {
        group_e_variable : 'cats',
        group_e_function : function(data){
            //... external java script code, e.g. Advertiser JS-snippets ...
        },
    }

}(window.main = window.main || {}, jQuery));

您可以在任何地方调用它们;在控制台中尝试一下:

>>GROUP_E.group_e_variable
>>'cats'

>>GROUP_E.group_e_function(my_data)
>> //whatever your function does

还有很多方法可以做到这一点,这种特殊的方法恰好是我最喜欢的。

有关模块模式的更多信息:http://www.adequatelygood.com/JavaScript-Module-Pattern-In-Depth.html

关于javascript - 将 jQuery 函数分成异步组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27959896/

相关文章:

javascript - 在不刷新页面的情况下打开更改DIV

javascript - 使用 jquery 设置多个选项值的样式 : Code works for a few option values only

javascript - Onload 函数在加载所有元素之前运行

javascript - json 在 stringify 期间不包含对象名称

c# - 从 Windows 服务调用异步方法

ios - 使用 GCD 在 UITableView 中轻松异步加载图像

javascript - 如何阻止重复加载

javascript - 在 jQuery 中写入 ejs 变量

javascript - 如何让我的 Node 应用程序同时执行 1000 多个异步操作?

javascript - 如何将图片从网址上传到 Google 云端硬盘?