Ajax hacks 之绪论:告别页面刷新

80酷酷网    80kuku.com

  ajax|刷新|页面

        曾记得INTERNET被用户称作"world wide wait"吗? web又回到了新石器时代了么? 在许多应用中, web仍然没有得到很大的改变。充斥着form、按钮,页面转移,等待,页面刷新,纠正错误,点击、等待……这可真够受的。

 现在的许多网站,例如许多经过精心设计的网站得到了很大的提高。需要更多的用户响应,这样浏览器会在服务器处理完以后才得到响应。 例如google map就是这样工作的:客户机会将所有的信息缓存起来,这样用户在移动地图,放大等活动的时候,就不再需要和服务器进行繁琐而缓慢的数据交互。

 AJAX是Asynchronous JavaScript and XML的简称。主要是由一组大家比较熟悉的技术组建而成:

JavaScript:脚本语言……

XMLHttpRequest:Javascript中的一个对象,可以通过HTTP协议和服务器进行通信。Ajax的许多技巧都是通过这个对象去实现的, 所有的主流浏览器,如Mozilla Firefox, Internet Explorer 5, Safari, Opera 7.6 都支持这个对象。

 Extensible Markup Language (XML):

XMLHttpRequest可以使用xml文件和服务器进行通信。

 HTML CSS:

文档对象模型DOM:

 XSLT:

AJAX可以说不是一个新的技术,而是已有技术的再利用。 重点介绍一下XMLHttpRequest对象:该对象可以从服务器得到数据,用户可以很方便的使用这些数据。对象有自己的API: 

  表 1-1. XMLHttpRequest 属性

属性名类型/描述
onreadystatechange回调函数; 将此属性设置成那些将被调用的函数。
readyState数字; 0 表示没有初始化, open() 函数没有调用; 1表示加载, send() 函数没有调用; 2 表示加载了, send() 已经调用,且headers/status 是可用的; 3 交互的, responseText 持有部分数据; 4 表示完成.
responseTextstring;返回的普通文本. responseXMLDOM Document object; an XML return value. status响应的状态代码,例如200 (ok) 404 (不存在).
statusTextstring; 于HTTP 响应状态相关的文本。

表 1-2. XMLHttpRequest方法方法名返回值/描述

abort()void; 取消HTTP请求.
getAllResponseHeaders()string; 返回所有的相应头
getresponseHeader(string header)string; 返回指定head信息的值
open(string url,string asynch)void; 为HTTP 请求准备,并且 指定是否同步
send(string)void; 发送http请求。
setHeader(string header,string value)void; 设置请求头, 但是必须首先调用open函数
<

分享到
  • 微信分享
  • 新浪微博
  • QQ好友
  • QQ空间
点击: