开发保留标准浏览器功能的AJAX应用程序
http://tech.ddvip.com 2006年11月20日 社区交流
本文详细介绍开发保留标准浏览器功能的AJAX应用程序
通过单击后退按钮,用户要求返回先前阅读的页面。浏览器通过从历史记录堆栈中找回先前的URI来响应后退按钮。Backbase Ajax引擎将监测这一变化,从历史记录中读取新的URI,并来到“论坛”部分选定BXML论坛(id=2)中的第192个主题,从而重新构建相应的状态。新的URI将按照上述语义显示在地址栏中。
到这里,我们的案例分析也就结束了。

图5.单击后退按钮后的论坛状态(单击图片查看大图)
Ajax程序确实需要后退按钮!在过去的几年中,Web开发人员因为市场要求“易于到达”并愿意接受“功能丰富”方面的牺牲,所以选择构建Web界面。然而,当前Ajax受到的普遍关注清楚地显示出这种情况实际上只是暂时的。市场现在强烈要求Web程序也能像桌面应用程序那样具有丰富的功能、交互性以及敏捷的响应能力。
但是,终端用户已经习惯了Web交互方式。使用常见模式与任何Web界面进行交互可以提高生产力。终端用户期望后退/前进按钮和刷新按钮能正常工作,可以创建书签和深链接,可以查看源文件,使用“查找”对页面进行搜索,而且搜索引擎可以对Ajax应用程序建立索引。
Ajax社区必须知道:正如本文所述,在Ajax应用程序中提供对后退/前进按钮以及其它传统浏览器功能的支持的技术是存在的。虽然实现起来并不容易,而且会增加成本,但是Ajax社区的成功需要将传统的浏览器功能构建到Ajax应用程序中。因此,我强烈呼吁Ajax开发人员构建支持这些功能的Ajax应用程序!
结束语在本文中,我着重阐明了Ajax应用程序为什么需要遵从传统的Web交互方式并提供传统的Web可用功能。我确定可以通过创建在碎片标识符中包含客户端状态信息的“Ajax URI” ,从而将这些功能编程到Ajax应用程序中。
阅读相关代码,您会发现,由于状态处理代码通常非常重要,再加上不同浏览器之间常常不兼容,实现完整的通用解决方案是相当困难的。而Backbase Ajax引擎通过开箱即用地提供所需功能,为该问题提供了一种解决方案。
来源:bea.com.cn 作者:Mark Schiefelbein 责编:豆豆技术应用