Unobtrusive与Hijax概念

Hijax就是一种贯彻了”progressive enhancement automatically guarantees graceful degradation(渐进增强自动保证平稳退化)”思想的Ajax程序设计开发理念,即:

1.首先,构建一个老式的网站,通过超链接和表单向服务器传递信息。服务器根据每次请求返回完整的新页面。
2.然后,通过JavaScript拦截那些链接和表单的提交动作,并代之以XMLHttpRequest对象来传递相应的信息。而且,你还能选择只更新页面的某一部分,而不是更新整个页面。


Hijax。事实上,根据上面的描述,Hijax新概念,其实是借用了hijack(劫持)一词的发音和含义,而且的确是一语双关的好创意!

由于Hijax涉及到服务器端架构的模块化:既能返回整个页面,也能返回部分页面内容。所以并没有说说那么简单。而且,虽然在通过 Ajax拦截请求之前,只需简单地构建老式的基于页面提交的网站,但同时却还要考虑服务器端架构有点自相矛盾(inherent paradox),但只要像下面这样思考就没问题:

1. 开始时规划Ajax
2. 结束时实现Ajax

也就是说,先使用老式的服务器端技术和老式的通过刷新显示更新信息的网页构建一个老式的Web应用程序。然后,在此基础之上再通过 JavaScript来添加更漂亮、更丰富、也更具可用性的功能。通过JavaScript拦截默认动作,并调用XMLHttpReqeust对象的方法发送请求,相当于为Web应用程序添加了一个实现了即时交互(异步传输数据)的中间层。而且,这样一来Web应用程序可以在不支持JavaScript的浏览器中做到平稳的退化,而不失其可用性。

参考:
http://www.cn-cuckoo.com/2007/11/14/the-origin-of-the-concept-of-unobtrusive-144.html
http://domscripting.com/blog/display/41
http://www.google.com/support/webmasters/bin/answer.py?hl=cn&answer=174992

你可能感兴趣的:(JavaScript,Web,应用服务器,Ajax,浏览器)