这是我们Ajax实战系列的最后一篇。 ECMAScript 5发布有段时间了,其中就包括了解析JSON的原生API-JSON.parse。许多浏览器已经支持了。主流JS库如JQuery,Ext,Prototype都优先使用JSON.parse,不支持该方法的浏览器则使用new Function或eval。 为何优先使用JSON.parse,我想...
我们在前面几篇文章中一直采用最精简的方式创建Ajax的核心XMLHttpRequest对象 1 var xhr = window.XMLHttpRequest ? new XMLHttpRequest() : new ActiveXObject('Microsoft.XMLHTTP');...
通常大多数浏览器是并行下载资源的,但由于外部脚本的特殊性例如通过脚本改变文档的DOM结构、脚本之间的存在依赖关系、使用document.write 向页面输出HTML等。浏览器为了确保正确执行脚本和呈现布局在浏览器加载和执行完成它之前会完全阻塞页面后续内容的呈现和其他资源的加...
1,onload事件
我们在上一文中介绍了如何检查是否超时,超时后却不做任何处理。这里如果超时,会给failure第二个参数msg赋值为“request timeout”。 这样使用者能清楚的知道一次HTTP请求的细节。实现细节较为诡异,慢慢体会。这里timeout的效果和JQuery,Ext是一样的。如下...
本文我们来学习一下如何检查超时。有时发出一个请求,后端什么时候返回前端并不清楚。有可能是1秒,3秒甚至更长时间。因此有必要添加一个参数来设置等待的时间,如果在设定的时间内没有返回结果则放弃该次请求。 实现思路:发出请求后指定一个时间,如超过该时间没有返回结...
我们接着上篇改造请求数继续讲解。Ajax中的x指的是XML,早期的数据格式都喜欢用XML,然后一层层的解析。当然简单的也会返回HTML(或称HTML片段)。 现在使用JSON格式的也很多。根据不同需求,给Ajax对象添加了三个实用方法:Ajax.text、Ajax.json、Ajax.xml。 Ajax.text返回纯...
本文接上篇,引入了一个私有函数_serialize,它会把js对象串行化成HTTP所需参数模式,接受如下两种结构 1 {name:'jack',age:20} --> name=jack&age=20...
Ajax建站学有专门的栏目进行讲解,本文Ajax实战将系列讲解Ajax,总共有6篇,从基本的Ajax直至高级的应用。最后会形成一个实用的Ajax工具库。 创建一个基本的Ajax应用不需要太多的代码,大概三个步骤,几十行代码即可。 1,创建Ajax的核心对象XMLHttpRequest 因为...
我们在《IE6中PNG图像不透明是什么问题》中介绍了IE6中png图像显示不正常的现象,在本篇文章中,讲讲怎么修正IE6的这个bug。 在跨浏览器浏览网页时出现的问题,通常可以利用CSS hack技术完成,但png图像的bug已经超出了版面内的问题范围,不能用它解决。 但是,通...