与 Script 或
程序语言沟通的桥梁。
所有WEB开发人员可操作及建立文件的属性、方法及事件都以对象来展现(例如,document 就代表“文件本身“这个对像,
table 对象则代表 HTML 的表格对象等等)。这些对象可以由当今大多数的浏览器以 Script 来取用。
一个用HTML或XHTML构建的网页也可以看作是一组结构化的数据,这些数据被封在DOM(Document Object Model)中,
DOM提供了网页中各个对象的读写的支持。
function loadCnt(){
var req=new XMLHttpRequest();
if (req) {
req.onreadystatechange=function() {
if (req.readyState==4 && req.status==200) {
if(req.responseText!=-1){
nodes=req.responseXML.documentElement.childNodes;
browse_cnt.innerText=nodes.item(0).text;
comment_cnt.innerText=nodes.item(1).text;
score_cnt.innerText=nodes.item(2).text;
}
}
}
req.open(''POST'', ''$path/AjaxCntCtrl'');
req.setRequestHeader(''Content-Type'', ''application/x-www-form-urlencoded'');
req.send("photo_id="+document.form1.photo_id.value);
}
}
//responseXML.documentElement.getAttribute(''stat'') == ''ok''
//responseXML.documentElement.getElementsByTagName(''title'')[0].firstChild.data;
4、XML
可扩展的标记语言(Extensible Markup Language)具有一种开放的、可扩展的、可自描述的语言结构,
它已经成为网上数据和文档传输的标准。它是用来描述数据结构的一种语言,就正如他的名字一样。
他使对某些结构化数据的定义更加容易,并且可以通过他和其他应用
程序交换数据。
5、综合
Jesse James Garrett提到的Ajax引擎,实际上是一个比较复杂的JavaScript应用
程序,用来处理用户请求,
读写服务器和更改DOM内容。
JavaScript的Ajax引擎读取信息,并且互动地重写DOM,这使网页能无缝化重构,
也就是在页面已经
下载完毕后改变页面内容,这是我们一直在通过JavaScript和DOM在广泛使用的方法,
但要使网页真正动态起来,不仅要内部的互动,还需要从外部获取数据,在以前,
我们是让用户来输入数据并通过DOM来改变网页内容的,但现在,XMLHTTPRequest,
可以让我们在不重载页面的情况下读写服务器上的数据,使用户的输入达到最少。
基于XML的网络通讯也并不是新事物,实际上FLASH和JAVA Applet都有不错的表现,现在这种富交互在网页上也可用了,
基于标准化的并被广泛支持和技术,并且不需要插件或
下载小
程序。
Ajax是传统WEB应用
程序的一个转变。以前是服务器每次生成HTML页面并返回给客户端(浏览器)。
在大多数网站中,很多页面中至少90%都是一样的,比如:结构、格式、页头、页尾、广告等,
所不同的只是一小部分的内容,但每次服务器都会生成所有的页面再返回给客户端,这无形之中是一种浪费,
不管是对于用户的时间、带宽、CPU耗用,还是对于ISP的高价租用的带宽和空间来说。如果按一页来算,
只能几K或是几十K可能并不起眼,但像SINA每天要生成几百万个页面的大ISP来说,可以说是损失巨大的。&nbs