- 博客(12)
- 资源 (118)
- 收藏
- 关注
JavaScript中链式调用之研习
方法链一般适合对一个对象进行连续操作(集中在一句代码)。一定程度上可以减少代码量,缺点是它占用了函数的返回值。 一、方法体内返回对象实例自身(this)function ClassA(){ this.prop1 = null; this.prop2 = null; this.prop3 = null;}ClassA.prototype = { me...
2010-08-27 08:28:20 93
IE8+中XMLHttpRequest对象timeout属性及ontimeout事件
最近在写一个ajax工具库,参考了JQuery等对请求超时的处理。偶然发现IE8的XMLHttpRequest对象已经增加这方面的支持了。在IE9 pre4测试也支持。如果W3C能将这两个东东标准化多好啊,不用那么的hack方式实现了。见:http://msdn.microsoft.com/en-us/library/ms535874%28VS.85%29.aspxXMLHttp...
2010-08-17 11:01:56 569
新API解析JSON---Ajax之七
ECMAScript 5发布有段时间了,其中就包括了解析JSON的原生API-JSON.parse。许多浏览器已经支持了。主流js库如JQuery,Ext,Prototype都优先使用JSON.parse,不支持该方法的浏览器则使用new Function或eval。为何优先使用JSON.parse,我想一个就是性能,原生的总是要快一些吧。此外JSON.parse较eval也更安全。这...
2010-08-16 16:01:41 121
创建xhr对象出现异常处理---Ajax之六
前面几篇一直采用最精简的方式创建Ajax的核心XMLHttpRequest对象var xhr = window.XMLHttpRequest ? new XMLHttpRequest() : new ActiveXObject('Microsoft.XMLHTTP'); 没有考虑其可能出现的异常,即创建失败。其实个人认为以上创建方式创建失败的几率非常之少,起码在IE6/7/8/Fire...
2010-08-16 15:40:05 257
超时处理---Ajax之五
上一篇只是检查是否超时,超时后却不做任何处理。这里如果超时,会给failure第二个参数msg赋值为“request timeout”。 这样使用者能清楚的知道一次HTTP请求的细节。实现细节较为诡异,得慢慢体会。这里timeout的效果和JQuery,Ext是一样的。如下 Ajax.text('../servlet/Ajax',{ timeout : 2000, succ...
2010-08-16 14:49:27 90
检查超时---Ajax之四
有时发出一个请求,后端什么时候返回前端并不清楚。有可能是1秒,3秒甚至更长时间。因此有必要添加一个参数来设置等待的时间,如果在设定的时间内没有返回结果则放弃该次请求。实现思路:发出请求后指定一个时间,如超过该时间没有返回结果则忽略。window对象的setTimeout方法再次起左右了(setTimeout能解决很多IE下古怪的bug)代码大概如下:var timeout = opt....
2010-08-16 11:17:48 105
结果分类---Ajax之三
Ajax中的x指的是xml,早期的数据格式都喜欢用xml,然后一层层的解析。当然简单的也会返回html(或称html片段)。现在使用JSON格式的也很多。根据不同需求,给Ajax对象添加了三个实用方法,Ajax.text,Ajax.json,Ajax.xml。Ajax.text返回纯文本,即responseTextAjax.json返回json,即会将responseText解析成js...
2010-08-16 09:37:27 84
改造请求参数---Ajax之二
接上篇。引入了一个私有函数_serialize,它会把js对象串行化成HTTP所需参数模式,接受如下两种结构 {name:'jack',age:20} --> name=jack&age=20{fruit:['apple','banana','orange']} --> fruit=apple&fruit=banana&fruit=orange...
2010-08-16 08:55:19 89
基本的封装---Ajax之一
Ajax,或许已经是老掉牙的话题。我学习总结一下。大概会有6篇,从基本的ajax直至高级的ajax应用。最后会形成一个实用的Ajax工具库。创建一个基本的Ajax应用不需要太多的代码,大概三个步骤。 1,创建Ajax的核心对象XMLHttpRequest因为浏览器之间的不兼容,IE7之前的版本并没有原生的XMLHttpRequest对象却实现为ActiveX对象。互联网及各种书...
2010-08-16 08:34:52 104
Firefox中的Node.mozMatchesSelector方法
mozMatchesSelector 如果元素具有指定的选择器字符串,那么该方法返回true。w3c草案中该方法为matchesSelector() 示例如下: <!DOCTYPE HTML><html> <head> <meta http-equiv="Content-Type" content="...
2010-08-09 13:48:42 143
option元素在各浏览器中的差异
1,IE6/7/8及IE9 pre4中无事件(如click,mouseover),Firefox/Safari/Chrome/Opera则不然 <select id="s1" multiple="multiple"> <option value="1" onclick="alert(1);" onmouseover="alert(1);">1
2010-08-05 12:57:02 112
发布一个事件管理模块
在BeyondSoft期间写了一个关于事件对象的分析报告,期间不断的总结。业余时间练习写了事件管理的各个版本(E0.0.1~E0.3.1)。目的希望根本工作需要选择不同的版本,因为有些库的事件模块很强大但却用不上。灵感来自JQuery, Dean Edwards , 灵图api 。当然还有与群里 猪婶婶的讨论。 /** * Event v0.3.1 ...
2010-08-01 11:17:16 169
ECMAScript 6入门(样章)
2014-09-23
Rework:每个程序员都应该读的一本书
2014-04-11
Mastering Web Application Development with AngularJS
2013-11-13
结构程序设计
2013-11-05
JavaScript异步编程:设计快速响应的网络应用
2013-06-06
JavaScript面向对象编程指南
2013-04-25
编写可维护的JavaScript
2013-04-25
UNIX编程艺术
2012-08-18
基于MVC的JavaScript Web富应用开发
2012-05-21
Essential JavaScript Design Patterns
2012-04-10
Getting Started with GEO.CouchDB and Node.js
2012-03-07
JavaScript Web Application
2012-02-26
JavaScript Patterns (JavaScript模式)
2011-12-30
HTML5 and CSS3: Develop with Tomorrow's Standards Today
2011-12-08
重构-改善既有代码的设计
2011-01-25
HTML5揭秘 英文版
2011-01-12
HTML 5用户指南 英文版
2011-01-12
jQuery 1.4.2 直观速查表
2010-09-10
HttpWatch.Professional.v5.2.16
2010-09-02
httpwatchpro-v4.0.54
2010-09-02
High.Performance.JavaScript
2010-05-13
JavaScript语言精粹
2010-04-26
Javascript语言精髓与编程实践
2010-04-19
我也能做CTO之程序员职业规划
2010-04-19
EMCA262 V5
2010-04-02
周爱民Qomo框架源码
2009-12-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人