当前位置:首页 » 服务器技术
开发技术指南» 文章正文
    引言: 本文所展示的这个框架的主要发明分为两部分。
 

 

    摘要:在这里我将试图考察一下目前.net平台的下的ajax框架,我也试图从中总结出来一种方法,使得你可以在众多基于.net平台的ajax框架和工具包中找到你所合适的一种,同时也希望你在考察、预研和使用这些流行的这些ajax-net 的框架时,做得理性和有的放矢。 我想,文章的方法会给目前使用ajax的.net用户带来帮助,从而提高你在.net平台下使用ajax的体验。为什么这么说,因为最近我的一个客户(应该是一些客户)的研发主管对我说,我们对atlas 非常兴......
    摘要:为什么使用ajax 也许大多数人已经知道ajax的意思是异步javascript和xml(asynchronous javascript and xml)。据我所知,这项技术最初是由microsoft在1999年提出来的,也就是我们所熟知的"使用远程调用(remote calls)的dhtml / javascript web应用程序"。这项技术的核心就是通过浏览器发出一个异步的http请求来调用服务端的网页或服务,在返回结果后,无需刷新就可以更新整个网......


AJAX:如何处理书签和后退按钮(1)

本文将展示一个开源javascript库,该脚本库给ajax应用程序带来了书签与后退按钮支持。在学习完这个教程后,开发人员将能够获得对一个ajax问题的解决方案(甚至连google maps与gmail现在都不提供该解决方案):一个强大的、可用的书签与后退前进功能,其操作行为如同其他的web应用程序一样。

本文将阐述目前ajax应用程序在使用书签与后退按钮方面所面临的严重问题;展示really simple history(rsh)库——一个可以解决以上问题的开源框架,并提供几个运行中的例子。

问题

书签与后退按钮在传统的多页面web应用程序中运行得非常好。当用户浏览web站点的时候,其浏览器的地址栏记录随新的url而更新,这些记录可以被粘贴到电子邮件或者书签中供以后使用。后退与前进按钮也可以正常操作,使用户可以在访问过的页面中向前或向后翻动。 【相关文章:如何高效维护局域网(优化篇)

本文所展示的这个框架的主要发明分为两部分。首先是一个隐藏的html表单,用于缓存大量短期会话的客户端信息;这种缓存功能为页面导航提供了强大的支持。其次是超链接锚点与隐藏iframe的组合,它们被嵌入后退与前进按钮,用来截获与记录浏览器的历史记录事件。以上两种技术都被包装在一个简单的javascript库中来简化开发。 【扩展阅读:企业网管员之对抗BT下载7种武器(1)

在这种类似于gmail的ajax软件中,浏览器的地址栏在用户选择功能与改变程序状态的时候保持不变,这使得无法在特定的应用程序视图中使用书签。此外,如果用户按下“后退”按钮来“撤销”上次的操作,他们会惊奇地发现,浏览器会完全离开该应用程序的web页面。 【扩展信息:如何高效维护局域网(故障篇)

但是ajax应用程序却不一样,它们是运行在单个web页面中的复杂程序。浏览器并不是为这类程序而构建的——这类web应用程序已经过时,它们在每次鼠标点击的时候都需要重新刷新整个页面。

解决方案

开源rsh框架可以解决这些问题,它为ajax应用程序提供了书签与控制后退、前进按钮的功能。rsh目前还处于beta阶段,可以在firefox 1.0、netscape 7+、internet explorer 6+等浏览器上运行;目前还不支持safari(有关说明,请参见我的文章“coding in paradise: safari: no dhtml history possible”)。

目前有几个ajax框架对书签与历史记录问题有所帮助;但这些框架目前都有几个由于实现而造成的重大bug(有关详细信息,请参见“coding in paradise: ajax history libraries”)。此外,很多ajax历史记录框架被绑定到较大的库上,例如backbase与dojo;这些框架为ajax应用程序引入了完全不同的编程模型,迫使开发人员使用全新的方式来获得历史记录功能。

相较之下,rsh是一个可以包含在现有ajax系统中的简单模块。此外,rsh库采用了一些技术以避免产生影响其他历史记录框架的bug。

rsh框架由两个javascript类组成:dhtmlhistory与historystorage。

dhtmlhistory类为ajax应用程序提供历史记录抽象。ajax页面使用add()方法添加历史记录事件到浏览器,指定新的地址与相关的历史记录数据。dhtmlhistory类使用一个锚散列(如#new-location)更新浏览器当前的url,同时把历史记录数据与该新url关联。ajax应用程序将自己注册为历史记录的监听器,当用户使用后退与前进按钮进行浏览时,历史记录事件被触发,为浏览器提供新的位置以及与add()调用一起保存的任何历史记录数据。


...   下一页
    摘要:xfire官方网站提供的基于webservice认证的例子有问题,在新版本的xfire1.1.2中编译不通过,不过这也是小case,我后来折腾了一下,为springside提供了一个简单的webservice认证功能。xfire跟spring的天然融合,让我们可以少努力10年就能简单地在spring中使用webservice的强大魅力,我从axis专向xfire有一些冲动,也吃了不少亏,但受rest一族的强力吹捧,感觉还是值得尝试的,因此,在公司的系统中也......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE