开发保留标准浏览器功能的AJAX应用程序

http://tech.ddvip.com   2006年11月20日    社区交流

本文详细介绍开发保留标准浏览器功能的AJAX应用程序

  

  图3.具有Ajax URI的论坛初始状态 (单击图片查看大图)

  访问Backbase论坛,您就可以看到URI如何随着每次状态改变而更新,即使更新是在客户端进行处理的,或者牵涉到通过XMLHttpRequest对象进行部分页面更新。

在新的浏览器窗口内重新创建论坛界面的状态

  现在让我们看看当开发人员将当前URI发送给朋友时会发生什么情况。这个朋友在浏览器窗口中打开了这个URI,期望能看到相同的界面状态。需要在新的浏览器中重新创建该状态。对于本文,我是从一个Firefox窗口中复制URI到一个新打开的IE窗口中。

  在地址栏中输入URI首先会产生一个服务器端的请求。使用“#”前的部分,会加载Backbase.com,在这一过程中,Backbase Ajax引擎也就实现了初始化。活动的Backbase引擎会阅读URI中“#”后的部分。通过这些信息,Backbase引擎会转到“论坛(forum)”部分,并选定BXML论坛(id=2)中的第211个主题,从而创建相应的状态。不需要页面的刷新,只需从服务器中加载附加的内容并在客户端部分地更新界面,就可以实现了。

  在后续的浏览器功能的处理中,新的URI被添加到浏览器历史记录中,这个新的URI既可以在地址栏中使用,也可以用来做深链接。“[0]”表示没有可返回(使用后退按钮)的先前状态。

  

  图4.在新的浏览器窗口中重新创建论坛状态(单击图片查看大图)

用户单击后退按钮后的论坛界面状态

  第一步我们研究了URI如何随着由用户交互所触发的界面状态更改而更新。下面我们将看到相反的情况:用户请求新的URI,相应的状态被重新创建。

来源:bea.com.cn    作者:Mark Schiefelbein    责编:豆豆技术应用

正在加载评论...