深入探索Ajax应用:从跨浏览器问题到安全模型的挑战
1. 重塑Web浏览器功能于应用之中
在开发应用时,我们可以重新实现Web浏览器的一些功能。以Google Maps为例,它掀起了Ajax热潮。乍看之下,Google Maps和Gmail一样具有可寻址性。访问http://maps.google.com/ ,会呈现一个大比例尺地图。使用Ajax可以放大并导航到全球任意点,但浏览器地址栏中的URI不会改变。
不过,Google Maps利用Ajax为当前所在的全球任意点维护一个“永久链接”。这个URI不在浏览器地址栏,而是在HTML文档的 <a> 标签中。它代表了Google Maps识别地球某区域所需的所有信息:纬度、经度和地图比例尺,是Ajax应用的新入口点,相当于浏览器的地址栏。
由于在导航地图时会额外进行DOM操作来更新这个 <a> 标签,地图上的每个点都能在Web上被访问。任何点都能被收藏、在博客中分享或通过电子邮件传播。访问这些URI的人能直接进入Google Maps Ajax应用的正确位置,而不是看到以美国大陆为中心的视图(若导航到地图上某位置后重新加载http://maps.google.com/ 就会出现这种情况)。Ajax破坏了可寻址性,但良好的应用设计又将其恢复,这使得像Google Sightseeing(http://googlesightseeing.com/ )这样的社区围绕Google Maps应用发展起来。
此外,Ajax应用可以通过重现浏览器的后退和前进按钮功能来恢复无状态性。不必完全照搬浏览器的行为,关键是让最终用户能在应用状态中前后移
超级会员免费看
订阅专栏 解锁全文
1757

被折叠的 条评论
为什么被折叠?



