马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
前天傍晚我发表了《Java的跨平台就是一句谎言。》,原本就是周末闲来无事,发表一篇略带争议性的博文让大家都来吵吵架,发表自己的看法,根本就没想着谁把谁打倒,一个行业或者是技术阵营是无法用短期口水仗打到对手的。【择要】在本文中,我将向你展现怎样利用ASP.NETAJAX框架对增加可点击的热门的HTMLMap控件举行扩大。经扩大后,当我们的鼠标挪动到这些热门上后,即弹出关于这些热门的具体信息;可是,这些具体信息都是经由过程AJAX异步体例从远程服务中获得的。
1、简介
起首,我们注重到,ASP.NET2.0中也供应了一个服务器控件ImageMap。此控件是一个让你能够在图片上界说热门(HotSpot)地区的服务器控件。用户能够经由过程点击这些热门地区举行回发(PostBack)操纵大概转发到某个URL地点。典范情形下,该控件用于必要对某张图片的部分局限举行互动操纵。但是,这个控件的不敷的地方在于,在点击这些热门地区举行回发时将招致全部Web页面的革新。
在本文中,我们将基于ASP.NETAJAX手艺对一般的HTMLMap控件加以扩大,以到达在点击其上的热门地区时,在显现有关具体信息时仅仅招致部分的页面更新,从而使之顺应Web2.0使用程序开辟潮水。
上面展现了本文示例程序运转时的一个快照。
.利用AJAX手艺扩大后的Map控件热门点击仅激发部分更新。
从上图中看到,当鼠标悬浮于上图太阳系中的木星(木星)上时,有关该星球的细节信息将以一个弹出窗口情势友爱地展现出来(注:此图取自MSDN,这里没有翻译响应单词)。
2、创立一个AJAX示例网站
启动VisualStudio2005,选择“文件→新建网站…”,然后选择“ASP.NETAJAX-EnabledWebSite”模板,定名工程为“Ajax_ImageMap”,并选择C#作为内置撑持言语,最初点击OK。
然后,增加一个新的ASPX页面ImageMap.aspx,而且按以下所示修正个中的HTML代码部分:
以下为援用的内容:
<IMGSRC=http://chinaz.com/Program/.NET/"images/solarsys.gif"WIDTH=504HEIGHT=126BORDER=0
ALT="SolarSystem"USEMAP="#SystemMap">
<MAPNAME="SystemMap">
<AREASHAPE="rect"COORDS="0,0,82,126"
onmou搜索引擎优化ver="javascript:GetAreaInfo(event,sun);"onmou搜索引擎优化ut="javascript:HidePopup();">
<AREASHAPE="circle"COORDS="90,58,3"
onmou搜索引擎优化ver="javascript:GetAreaInfo(event,merglobe);"onmou搜索引擎优化ut="javascript:HidePopup();"
>
<AREASHAPE…………(省略)
</MAP>
在下面代码中,我们增加了一个HTML元素和一个HTML元素(注:VS2005工具栏中没有供应现成的控件,只妙手工增加)。个中界说了各个星球响应的热门外形及坐标信息。并且,每个热门都有一个响应的onmou搜索引擎优化ver和onmou搜索引擎优化utJavaScript函数与之相干联。当鼠标在这些热门上挪动时,这两个函数将被激活,响应信息被显现出来。有关这两个函数,我们将在前面具体会商。
3、创立一个AJAX服务
如今,我们必要创立一个新的Web服务,由它卖力与热门点击相干的数据检索义务。实在,这里所谓的“AJAX服务”,其功效与一般的Web服务是分歧的。有关它们之间的细节区分在此不再赘述。如今,你能够右击工程,然后增加一个定名为LocationService.asmx的Web服务。
注重,在本例中我们仅想经由过程这个Web服务来摹拟实战情况中的一种复杂逻辑。因而,它仅包括一个Web办法;此办法卖力摹拟从服务器数据库中获得客户端必要的信息。
在此,为了使这个ASP.NETWeb服务可以被从客户端以AJAX体例加以挪用,必需把ScriptService属性增加到类声明的后面,以下所示:
以下为援用的内容:
[ScriptService()]
publicclassLocationService:System.Web.Services.WebService
{
<palign="left">共3页:上一页1[2][3]下一页
我见过java运行在手机上,包括很廉价的山寨手机,但是却暂时没发现.net在手机上有什么作为。wp7可能是个转机,但是按照《Java的跨平台就是一句谎言。那.net的跨平台也当之无愧是一句谎言。 |