因为我们使用jQuery,这意味着需要调用 jQuery.getScript 和 jQuery.getJSON 函数。 我知道这些函数都是异步执行(asyncronously)并且会延迟一段时间返回,所以我想知道是否有一种方式,使我可以使用单个回调,并行地加载它们,就像JS加载器 curljs 所做的那样。 很幸运! 通过jQuery.when, 我可以并发地加载两个请求,只执行一次回调!

jQuery 脚本

正如我提到的,下面是加载脚本和一个JSON资源的用例:

$.when(

$.getScript('/media/js/wiki-min.js?build=21eb633'),

$.getJSON('https://developer.mozilla.org/en-US/demos/feeds/json/featured/')

).then(function(a, b) { // 或者也可以使用 ".done"

// Yay, 加载完成,此处我们可以执行一些依赖操作。。。

});

当资源加载完成, 指定的 done 或者 then 回调会触发,因此可以知道请求已经完成。 每个请求返回的回调参数对象类型不同,因此上述请求可能返回如下信息:

// 格式: [response, state, jqxhr], [response, state, jqxhr]

["(function(c){var e=c(".from-search-navigate");if(e…;if(j){g.apply(m,l)}}}})(window,document,jQuery);", "success", Object]

[Array[15], "success", Object]

如果还需要增加一个传统的AJAX XHR请求,比如说一个小部件模板,我们可以这样做:

$.when(

$.getScript('/media/js/wiki-min.js?build=21eb633'),

$.getJSON('https://developer.mozilla.org/en-US/demos/feeds/json/featured/'),

$.get('/')

).then(function(a, b, c) {

console.log(a, b, c);

});

Dojo Toolkit很早就有此类功能了,但jQuery也可以这么做我还是相当振奋的。 对于现在的开发,多个不同步且返回先后顺序也不确定的请求共享同一个回调是很自然的需求,所以jQuery绝对是与时俱进的!

jQuery:多个AJAX/JSON请求对应单个回调

原文链接:jQuery: Multiple AJAX and JSON Requests, One Callback 原文日期: 2014年4月15日 翻译日期: 2014年4月22日 翻译人员: 铁 ...

jQuery:多个AJAX/JSON请求相应单个回调

原文链接:jQuery: Multiple AJAX and JSON Requests, One Callback 原文日期: 2014年4月15日 翻译日期: 2014年4月22日 翻译人员: 铁 ...

jquery+html三级联动下拉框及详情页面加载时的select初始化问题

html写的三个下拉框,如下:

玩转Web之Json(二)----jquery easy ui + Ajax +Json+SQL实现前后台数据交互

最近在学Json,在网上也找过一些资料,觉得有点乱,在这里,我以easy ui的登录界面为例来说一下怎样用Json实现前后台的数据交互 使用Json,首先需要导入一些jar包,这些资源可以在网上下载到 ...

jQuery加载外部文件的方式get、post、ajax、load的区别及异步加载的实现

一.$.post(url, [data], [callback], [type])  url (String) : 发送请求的URL地址. data (Map) : (可选) 要发送给服务器的数据,以 ...

使用 jQuery Ajax 在页面滚动时从服务器加载数据

简介 文本将演示怎么在滚动滚动条时从服务器端下载数据.用AJAX技术从服务器端加载数据有助于改善任何web应用的性能表现,因为在打开页面时,只有一屏的数据从服务器端加载了,需要更多的数据时,可以随着用 ...

将jquery和公共样式缓存到localStorage,可以减少Http请求,从而优化页面加载时间

以下代码: //入口函数 if (window.localStorage) { initJs(); initCss("css", "/gfdzp201508257998/ ...

jQuery+ajax实现滚动到页面底部自动加载图文列表效果

.0" en ...

常用SQL语句集合

一.数据定义 1.创建新数据库:CREATE DATABASE database_name2.创建新表:CREATE TABLE table_name (column_name datatype,co ...

洛谷 P3953 逛公园

题目链接 思路 首先没有0边,且k为0的情况就是最短路计数. 如果k不为0,看到k<=50,想到dp. 设f[u][i]表示到达u点比最短路多走i的路径数,转移到v点. f[u][i]+=f[v ...

Ubuntu16&period;04下通过tar&period;gz包安装MySQL5&period;5&period;52

1.下载  tar.gz包 : https://dev.mysql.com/downloads/mysql/ 2. // 安装依赖 sudo apt-get install libaio-dev // ...

Django中使用django&lowbar;debug&lowbar;toolbar

一 概述 django_debug_toolbar 是django的第三方工具包,给django扩展了调试功能. 包括查看执行的sql语句,db查询次数,request,headers,调试概览等. ...

JDK 之 Java Bean 内省机制

JDK 之 Java Bean 内省机制 JDK 规范目录(https://www.cnblogs.com/binarylei/p/10200503.html) JavaBean 是一种特殊的 Jav ...

ajax加载对应的json,jQuery:多个AJAX/JSON请求对应单个回调并行加载相关推荐

  1. 一次ajax多次回调结果,使用jQuery中的when实现多个AJAX请求对应单个回调的例子分享...

    我知道这些函数都是异步执行(asyncronously)并且会延迟一段时间返回,所以我想知道是否有一种方式,使我可以使用单个回调,并行地加载它们,就像JS加载器 curljs 所做的那样. 很幸运! ...

  2. ajax提交无反应,IE中jquery.form中ajax提交没反应解决方法分享

    花了三个钟头,反复查,发现,原来是改了处理页面的返回头信息. 加上了 application/x-javascript ,ie8就不干活了. 如果是text/html,就行,或者不指定也行. 算bug ...

  3. jquery中ajax中的参数,jquery中的ajax参数

    jquery中将ajax封装成了函数,我们使用起来非常方便,jquery会自动根据内容选择post还是get方式提交数据,并且会自动编码,但是要想完全掌握jquery中的ajax,我们必须将它的各个参 ...

  4. 阿里jquery的ajax迁移fetch,你不需要jQuery(三):新AJAX方法fetch()

    XMLHttpRequest来完成ajax有些老而过时了. fetch()能让我们完成类似 XMLHttpRequest (XHR) 提供的ajax功能.它们之间的主要区别是,Fetch API 使用 ...

  5. jQuery学习记录--ajax

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一.原生JavaScript中的Ajax 1.创建Ajax对象: 2.连接到服务器 3.发送请求 4.接收返回值 二. ...

  6. Jquery下的Ajax调试方法

    Jquery下的Ajax调试方法 介绍 本文介绍Jquery下的Ajax调试方法:很多调试方法,就是一点就通,但是,在还没有通之前,会让人困惑,不知所以然: Ajax 可以为用户提供更为丰富的用户体验 ...

  7. ajax远程调用,jquery中的ajax方法怎样通过JSONP进行远程调用

    关于JSONP的概念和为什么要使用JSONP网上已经有很多教程,这一节主要演示下在JQUERY中的ajax方法怎样通过JSONP进行远程调用 首先介绍下$.ajax的参数 type:请求方式 GET/ ...

  8. jquery validation engine ajax验证,jquery.validationEngine 验证 AJAX 不起作用解决方法

    当前位置:我的异常网» Ajax » jquery.validationEngine 验证 AJAX 不起作用解决方 jquery.validationEngine 验证 AJAX 不起作用解决方法 ...

  9. FPGA并行加法树设计

    之前在设计中遇到过1个问题,如何在verilog中并行实现大量数据(几十.几百个甚至更多)的加法操作. 最直接想到的方法一般会类似: reg [7:0] data [N - 1 : 0];wire[M ...

最新文章

  1. android 拖动的view,Android实现随意拖动View效果
  2. 原理分析之四:一次SQL查询的源码分析
  3. POJ1722二维spfa+优先队列优化
  4. PHP学习(php概念、基本语法、流程控制)
  5. 超简单的分布式ID生成方案!美团开源框架介绍
  6. 国际运营版Java区块链交易所源码币币+法币+永续+期权+机器人
  7. 新建的邮件服务器只能发件不能收件_49. Django 2.1.7 使用内置函数发送邮件
  8. 【VS开发】MFC修改Opencv namedWindow的风格
  9. 打印机显示rpc服务器,win10打印机出现RPC服务器不可用的处理办法
  10. 【多轮对话】多轮对话状态追踪技术综述
  11. Android进阶:Android零基础进阶到高级架构师
  12. 接下来是 Downward API,它的作用是:让 Pod 里的容器能够直接获取到这个 Pod API 对象本身的信息。
  13. Play-To-Earn游戏将接管电子游戏行业?
  14. 2019前端面试题记录(杂文)
  15. 查询薪金比“SMITH”或者“ALLEN”多的所有员工的编号、姓名、部门名称、领导姓名、部门人数、平均工资、最高及最低工资
  16. Transformer Fusion for Indoor RGB-D Semantic Segmentation非官方自己实现的代码
  17. 滴水逆向三期 win10 ASLR UnmapViewOfSection傀儡进程 加密壳项目
  18. lssvm回归 matlab,用lssvm做回归预测,预测的结果偏差很大,如何进行参数寻优
  19. 凯文・凯利-《失控》
  20. 三菱je-a系列伺服支持modbusrtu 协议吗_作为工控电气人,你知道我们必备的软件有哪些吗?...

热门文章

  1. 调研了10家公司的技术架构,我总结出了一套大数据平台的套路
  2. 每人都有两大炸弹的扎金花2012
  3. 飞秋(FeiQ)已在计算机技术的世界里沉浸了十年
  4. 10W 赞的程序员高薪职业建议
  5. 一个内部转岗的机会,要不要尝试?
  6. 没想到啊!3980元的Web前端视频今日免费送。
  7. mysql normal like_MYSQL语句
  8. clr20r3 mysql.data_C# CLR20R3 程序终止的几种解决方案
  9. SQLite | Select 语句
  10. 轨迹相似性度量之基于Hausdorff与LCSS的理解