AJax 源码思路

/*
* Ajax的源码实践
*
* 创建一个Ajax
* 创建连接
* 请求
* 返回
* -----------美丽的分割线-------------------------
* 1>>>>>>>>>
* XMLHttpRequest 火狐下
* ActiveXObject(‘Microsoft.XMLHTTP‘) IE下
*
* 2>>>>>>>>>
* onreadystatechange 当客户端和服务器发生通信时调用
*
* readyState 和服务器通信完成到第几部了【只代表是否结束不代表是否成功】
* 0 初始化 还没有调用open方法
* 1 已经调用了send()方法
* 2 载入 send()方法完成
* 3 正在解析内容
* 4 完成解析客户端调用
*
* status 请求结果【是否成功】
* 200 代表成功
*
* responseText 服务器解析完成返回的内容
*/

 1 function ajax(url , fnSucc , fnFaild )
 2 {
 3     //创建一个ajax
 4     var oAjax = null;
 5     if(window.XMLHttpRequest)
 6     {
 7         oAjax = new XMLHttpRequest;
 8     }
 9     else
10     {
11         oAjax = new ActiveXObject(‘Microsoft.XMLHTTP‘);
12     }
13
14     //创建连接
15     oAjax.open(‘GET‘, url , true);
16
17     //发送请求
18     oAjax.send();
19
20     //返回数据
21     oAjax.onreadystatechange=function()
22     {
23         if(oAjax.readyState == 4)
24         {
25             if(oAjax.status == 200)
26             {
27                 fnSucc(oAjax.responseText);
28             }
29             else
30             {
31                 if(fnFaild)//如果有第三个参数 才执行
32                 {
33                     fnSucc();
34                 }
35
36             }
37         }
38     }
39 }
时间: 2024-08-06 07:58:50

AJax 源码思路的相关文章

ajaxFileupload的源码思路分析

? 1 ajaxfileupload源码: jQuery.extend({ //创建一个临时的iframe; createUploadIframe: function(id, uri) { //create frame var frameId = 'jUploadFrame' + id; var iframeHtml = '<iframe id="' + frameId + '" name="' + frameId + '" style="posit

分享我写的IOCP:源码+思路

首先说明,下面的代码仅是一个IOCP的demo,很多地方的设计非常差,当然也有一些设计还算可以:).此篇仅供对IOCP有些了解但又不深入的.需要一个稍微完整示例的.对网络编程感兴趣的同学参考.点击这里下载代码 整个程序的流程如下: 流程完全是无阻塞的,主线程里,将收到的消息全都一次性取出后,然后派发.所有欲发送的消息都缓存起来,等到更新的时候一起发送.有些地方代码没有完善,比如断开连接后,socket.内存等资源的关闭回收.要注意MAXRECEIVEDBUFFLENGTH这个宏,它是定义每个so

分享》:关于阅读开源项目的源码思路方法

关于阅读开源项目的源码思路方法:<不喜勿喷> 一般开源项目, 如果这个项目你很熟悉经常用, 那么你直接从 main 入手没问题.. 如果你不熟悉或者代码量很大, 最好从代码的 example 代码 或者 client 的代码入手比较容易. 这些代码直接 gdb 进去就可以调试运行了, 客户端的功能搞清楚了,会用了, 恐惧感就降下去了, 再看服务端就容易了. 看 c 代码要 关注主体核心 struct , 整个server, client 可能都是围绕整个 struct 运行起来的, 这个str

【重播工具箱】MTK全方案手机端APP,一键备份自动生成线刷包 源码思路解析

这个是本人MTK工具箱,在 5月份的时候,发布的..功能可能说是全球首发把,第一个手机MTK的一键备份工具,而且是兼容MTK全方案.MTK6589 MTK6592 6575 82等, 现在将源码以及思路,分享给大家,有兴趣的可以看看. 源码解析以及思路,待发布....... 分享地址:http://www.592zn.com/thread-311286-1-1.html 下载地址http://pan.baidu.com/s/1hqeethy重大更新: 1.手机端首发,备份MTK系列全自动,生成线

OpenCV人脸检测(完整源码+思路)

本博文IDE为vs2013 OpenCV2.49 话不多说,先看视频演示(20S演示): 如下: https://v.youku.com/v_show/id_XMjYzMzkxMTYyMA==.html?spm=a2h0w.8278793.2736843.4#paction 程序截图如下: 如何来用OpenCV来实现能. 下面给出OpenCV实现人脸检测的一般步骤: 1.加载人脸检测器 2.开启摄像头 3.对图片进行灰度处理(其实可以不处理,上图中原图的标题栏就是未进行灰度处理进行的检测,这里的

uCrop源码思路分析--流程梳理

首先要把思路弄清楚,先将这个项目运行在手机上,玩一玩,看看他都有哪些功能,然后再考虑那些功能是怎么实现的. 项目Github链接 第一阶段 折腾一番后就大致有个印象了,接下就可以分析具体功能了,且不看布局这些是怎么弄的,先从这个库的入口开始分析,就是我们是怎么与图片进行交互的,手势! 对,我们通过手势来改变图片的显示,可以平移,旋转,放大,我们应该从这里切入,整个思路就会比较清晰. 那么,问题来了. 如何分配这些功能,我应该创建几个类,他们之间应该是怎样的继承关系等等,这就是体现作者功底的时候了

jQuery源码 Ajax模块分析

写在前面: 先讲讲ajax中的相关函数,然后结合函数功能来具体分析源代码. 相关函数: >>ajax全局事件处理程序 .ajaxStart(handler) 注册一个ajaxStart事件处理器.当一个Ajax请求开始,并且同时无其它未完成的Ajax请求时,jQuery触发ajaxStart事件. .ajaxSend(handler) 注册一个ajaxSend事件处理器.当一个Ajax请求被发送时触发ajaxSend事件. .ajaxSuccess(handler) 注册一个ajaxSucce

jQuery源码分析系列(37) : Ajax 总结

综合前面的分析,我们总结如下3大块: jQuery1.5以后,AJAX模块提供了三个新的方法用于管理.扩展AJAX请求 前置过滤器 jQuery. ajaxPrefilter 请求分发器 jQuery. ajaxTransport 类型转换器 ajaxConvert 为了整体性与扩展性考虑,把整个结构通过Deferred实现异步链式模型,Promise对象可以轻易的绑定成功.失败.进行中三种状态的回调函数,然后通过在状态码在来回调不同的函数就行了 出于同源策略考虑,存在跨域问题,所以ajax内部

[Android]Volley源码分析(二)Cache

Cache作为Volley最为核心的一部分,Volley花了重彩来实现它.本章我们顺着Volley的源码思路往下,来看下Volley对Cache的处理逻辑. 我们回想一下昨天的简单代码,我们的入口是从构造一个Request队列开始的,而我们并不直接调用new来构造,而是将控制权反转给Volley这个静态工厂来构造. com.android.volley.toolbox.Volley: public static RequestQueue newRequestQueue(Context conte