首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

读Zepto源码之Ajax模块

ajax 请求时触发 ajaxSuccess / ajaxError : 请求成功/失败时触发 ajaxComplete: 请求完成(无论成功还是失败)时触发 ajaxStop: 请求完成后触发,这个事件在...如果 global 为 true ,则将 $.active 的数量减少 1。如果 $.active 的数量减少至 0,即没有在执行中的 ajax 请求时,触发全局的 ajaxStop 事件。...在触发 ajaxSuccess 事件前,先调用配置中的 success 方法,将 ajax 返回的数据 data 和当前状态 status 及 xhr 作为回调函数的参数。...empty function empty() {} 空函数,用来作为回调函数配置的初始值。这样的好处是在执行回调函数时,不需要每次都判断回调函数是否存在。...jsonp 请求的 type 必须为 jsonp 。 私有变量用来临时存放配置中的 jsonpCallback ,即 jsonp 请求成功后执行的回调函数名,该配置可以为 function 类型。

3.5K00

NProgress.js - 前端全站进度条插件 - 给你的网站添加一个加载进度条

了解了pjax的全局事件,接下来我们找到对应的方法在main.js中的位置,因为主题自带了一个pjax加载动画,我们先把它注释掉 然后把上面提到的方法与对应的pjax事件绑定 完成了与pjax..., 会在任意一个ajax请求执行的时候触发,ajax提供了6个全局事件函数,会被页面中所有的ajax请求触发,在不同时间点会触发不同的全局事件。..."); }); 6个全局事件函数分别为: ajaxStart在ajax请求开始时触发 ajaxSend在beforeSend回调函数之后触发 ajaxSuccess在success回调函数之后触发 ajaxError...在error回调函数之后触发 ajaxComplete在complete回调函数之后触发 ajaxStop在ajax请求结束时触发 首先按自己的需求选择全局事件函数连接,我这里是跟随pjax事件选择的ajaxSend...(); }); 效果为点击加载更多按钮后执行.start()事件展示进度条并逐渐增加,文章加载完毕后执行.done()事件 0x05 总体效果 目前还存在一个bug,评论ajax

6.2K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    原来你是这样的JSONP

    字段(注意这个时候是设置了),但是如果请求在超时之后完成了,你的jsonpCallback还是会被执行。...照理说这个函数应该是请求在超时时间内完成才会被执行啊!为毛这个时候超时了,还是会被执行啊!!! 不急等我们一步步分析完就会知道这个答案了。...,我们知道我们是可以不传入success函数的,当我们指定jsonpCallback的时,请求成功同样会走jsonpCallback函数,但是好像ajaxSuccess没有执行这个函数,具体在处理的呢?...字段(注意这个时候是设置了),但是如果请求在超时之后完成了,你的jsonpCallback还是会被执行。...照理说这个函数应该是请求在超时时间内完成才会被执行啊!为毛这个时候超时了,还是会被执行啊!!! 问题1:为什么会报错呢?

    66230

    原来你是这样的jsonp(原理与具体实现细节)

    照理说这个函数应该是请求在超时时间内完成才会被执行啊!为毛这个时候超时了,还是会被执行啊!!! 不急等我们一步步分析完就会知道这个答案了。...第一句自然是针对超时处理,如果请求在指定超时时间之前完成,自然是要把他清除一下,不然指定的时间到了,超时的回调还是会执行,这是不对的。..., deferred) { var context = settings.context // 执行用户传进去的error函数,注意这里的context决定了error函数中的this执行...,我们知道我们是可以不传入success函数的,当我们指定jsonpCallback的时,请求成功同样会走jsonpCallback函数,但是好像ajaxSuccess没有执行这个函数,具体在处理的呢?...照理说这个函数应该是请求在超时时间内完成才会被执行啊!为毛这个时候超时了,还是会被执行啊!!! 问题1:为什么会报错呢?

    2.2K100

    Web前端-Ajax基础技术(下)

    请求完成后注册一个回调函数 .ajaxError() ajax请求出错 .ajaxSend() ajax请求发送之前绑定一个要执行的函数 .ajaxStart() 在ajax请求刚开始时执行一个处理函数....ajaxStop() 在ajax请求完成时执行一个处理函数 .ajaxSuccess() 绑定一个函数当ajax请求成功完成时执行 jQuery.ajax() 执行一个异步的http(ajax)请求...jQuery.ajaxPerfilter() 在每个请求之前被发送和$.ajax()处理它们前处理 jQuery.ajaxSetup() 为以后要用到的ajax请求设置默认的值 jQuery.ajaxTransport...文件 jQuery.post() 请求从服务器加载数据 跨域: 同源,域名,协议,端口,完全相同,同源的相互通过ajax的方式进行请求。...原理是在客户端借助script标签请求服务端的一个动态网页,服务端的这个动态网页返回一段带有函数调用的javascript全局函数调用的脚本,将原本需要返回给客户端的数据传递进去。

    2.5K30

    Ajax等待返回结果时,弹出一个友好的等待提示

    巧用Ajax的beforeSend 提高用户体验 jQuery是经常使用的一个开源js框架,其中的$.ajax请求中有一个beforeSend方法,用于在向服务器发送请求前执行一些动作。...要避免这种现象,在$.ajax请求中的beforeSend方法中把提交按钮禁用掉,等到Ajax请求执行完毕,在恢复按钮的可用状态。...ajaxSuccess 全局事件 全局的请求成功 error 局部事件 仅当发生错误时触发。你无法同时执行success和error两个回调函数。...ajaxError 全局事件 全局的发生错误时触发 complete 局部事件 不管你请求成功还是失败,即便是同步请求,你都能在请求完成时触发这个事件。...ajaxComplete 全局事件 全局的请求完成时触发 ajaxStop 全局事件 当没有Ajax正在进行中的时候,触发。

    5K100

    jquery学习笔记1

    jQuery设计理念 ajax链式操作 var jqxhr = $.ajax( "example.php" ) .done(function() { alert("success"); }) ....交互 // 动画引擎 从2.1版开始jQuery支持通过AMD模块划分,jQuery在最开始发布的1.0版本是很简单的,只有CSS选择符、事件处理和AJAX交互3大块。...其发展过程中,有几次重要的变革: ☑ 1.2.3 版发布,引入数据缓存,解决循环引用与大数据保存的问题 ☑ 1.3 版发布,它使用了全新的选择符引擎Sizzle,在各个浏览器下全面超越其他同类型...1.7 版发布,抽象出回调对象,提供了强大的的方式来管理回调函数列表。...jQuery文档针对业务层的Ajax的处理提供了一系列的门面接口: .ajaxComplete() .ajaxError() .ajaxSend() .ajaxStart() .ajaxStop

    57470

    Ajax等待返回结果时,弹出一个友好的等待提示

    巧用Ajax的beforeSend 提高用户体验 jQuery是经常使用的一个开源js框架,其中的$.ajax请求中有一个beforeSend方法,用于在向服务器发送请求前执行一些动作。...要避免这种现象,在$.ajax请求中的beforeSend方法中把提交按钮禁用掉,等到Ajax请求执行完毕,在恢复按钮的可用状态。...ajaxSuccess 全局事件 全局的请求成功 error 局部事件 仅当发生错误时触发。你无法同时执行success和error两个回调函数。...ajaxError 全局事件 全局的发生错误时触发 complete 局部事件 不管你请求成功还是失败,即便是同步请求,你都能在请求完成时触发这个事件。...ajaxComplete 全局事件 全局的请求完成时触发 ajaxStop 全局事件 当没有Ajax正在进行中的时候,触发。

    3.9K10

    jQuery学习笔记

    AJAX 1. 请求与回调 jQuery的AJAX,核心的请求处理函数只有一个,就是 $.ajax(),然后就是一个简单的上层函数。...ajaxError() 请求错误 .ajaxComplete() 请求完成 .ajaxStop() 请求结束(在 .ajaxComplete()后) 3....Deferred Deferred对象是在jQuery1.5中引入的回调管理对象。其作用是把一堆函数按顺序放入一个调用链,然后根据状态来依次调用这些函数。AJAX的所有操作都是使用它来进行封装的。...当我们需要完成,像“请求A和请求B都完成时,执行函数”之类的需求时,使用 $.when()就可以了。...() 从调用链中移除指定的函数 callbacks.empty() 清空调用链 callbacks.disable() 关闭调用链的继续执行,新添加的函数也不会被执行 callbacks.lock()

    3.5K20

    Web前端JQuery面试题(三)

    onload()方法要等页面中全部元素加载到浏览器中才执行,如果页面中存在大量图片,要等这些内容加载完毕。 ready()方法只要页面的dom模型加载完毕即可,就会触发ready()。...getJSON()可以获取.json格式的文件内容 17.关于全局函数中的getScript() 通过全局函数getScript()可以获取.js文件内容 $.getScript(url,[callback...$.ajax([options]); $.ajaxSetup([options]); ajaxSuccess(callback) ajax请求成功时执行 ajaxStop(callback) ajax请求结束时执行...ajaxStart(callback) ajax请求开始时执行 ajaxComplete(callback) ajax请求完成时执行函数 ajaxError(callback) ajax请求发送错误时执行函数...ajaxSend(callback) ajax请求发送前执行函数 结言 好了,欢迎在留言区留言,与大家分享你的经验和心得。

    3.1K21

    jQuery ajax() 方法

    jQuery Ajax 操作函数 jQuery 库拥有完整的 Ajax 兼容套件,其中的函数和方法允许我们在不刷新浏览器的情况下从服务器加载数据。...函数 描述 jQuery.ajax() 执行异步 HTTP (Ajax) 请求。 .ajaxComplete() 当 Ajax 请求完成时注册要调用的处理程序。这是一个 Ajax 事件。....ajaxError() 当 Ajax 请求完成且出现错误时注册要调用的处理程序。这是一个 Ajax 事件。 .ajaxSend() 在 Ajax 请求发送之前显示一条消息。...请求成功时可调用回调函数,如果需要在出错时执行函数,请使用 $.ajax。 示例代码: $.get("....其实应该为客户端请求的类型(JSON,XML,等等) 这是一个简单的 POST 请求功能以取代复杂 $.ajax 。请求成功时可调用回调函数。如果需要在出错时执行函数,请使用 $.ajax。

    2.5K60

    php ajax parsererror,完美解决ajax跨域请求下parsererror的错误

    ajax请求报parsererror错误是很宽泛的概念,很多情况下都报这个错, 在很多时候,即使ajax提交、返回都正常 XMLHttpRequest.status=200 (正常响应) XMLHttpRequest.readyState...在使用ajax,以及相关应用开发过程中,一定要按标准写程序,可以减少出错的机率....这个标准包括语法,数据格式,标点符号等. ajax跨请求中,如果data为空,请使用; data:”{}”, ajax处理服务器返回Json格式数据时,如果采用$.parseJSON()方式, 那么服务器返回的...跨域请求(jsonp)中,服务端返回数据格式必须是: myCallbackFunction({“id”:1,”name”:”C#”,”is_familiar”:true}); 请注意这个函数最后的分号”...这种错误很隐敝,在开发时,不容易发现,在并发测试时,就很容易暴露出. (512笔记 512pic.com) 注:关于完美解决ajax跨域请求下parsererror的错误的内容就先介绍到这里,更多相关文章的可以留意

    1.4K10

    详细解读Jquery各Ajax函数:$.get(),$.post(),$.ajax(),$.getJSON()

    这个函数也是可以跨域使用的,相比get()、post()有一定优势。另外这个函数可以通过把请求url写 成”myurl?callback=X”这种格式,让程序执行回调函数X。...你无法同时执行success和error两个回调函数 ajaxError 全局事件全局的发生错误时触发 complete (局部事件) 不管你请求成功还是失败,即便是同步请求,你都能在请求完成时触发这个事件...ajaxComplete 全局事件全局的请求完成时触发 ajaxStop (全局事件) 当没有Ajax正在进行中的时候,触发 局部事件在之前的函数中都有介绍,我们主要来看看全局事件。...+"请求失败"); }); 很显然,第三个参数也可以帮助你传递你在AJAX事件里加入的自定义参数。...在单个AJAX请求时,你可以将global的值设为false,以将此请求独立于AJAX的全局事件。

    3.9K100

    JavaScript学习笔记(五)——Ajax

    jQuery与Ajax的综合应用 Ajax是 Asynchronous JavaScript And XML 的缩写,意思是异步的JavaScript和xml,他是基于JavaScript和HTTP请求的一种网页编程模式...GET和POST模式: GET方式一般用来传送简单数据,大小限制在1kb以下,请求的数据被转化成查询字符串并追加到请求的URL之后发送; POST可以达到2MB,他是将数据存放在send方法中发送,在数据发送之前必须先设置...HTTP请求的头部。...]); 参数同get serialize()序列化表单 在jQuery中,可以使用serialize函数将表单数据序列化为键值对,创建url编码文本字符串进行提交。...Ajax中的全局事件 ajax的全局事件会在调用其他事件的时候默认触发: ajaxStart() ajaxSend() ajaxSuccess() ajaxComplete() ajaxStop() ajaxError

    1.9K10
    领券