分享
 
 
 

用JSP定制标签创建丰富的超连接(一)

王朝java/jsp·作者佚名  2008-05-19
窄屏简体版  字體: |||超大  

当今由HTML支持的连接机制(<a href="destination.html")允许创建有唯一地址的超连接,为了能在超连接上增加上下文相联系的地址,我们需要提供一些嵌入语(比如:"download PDF version," "download Word version,"等等)或者使其跳转到页面的另一部分(比如:a "Resources"),有时候会导使读者找不到上下文。如果我们把这些附加的地址潜入到一个超连接里,就可以极大的提高页面的使用价值。这些嵌入的连接可以指向另外一些资源,以使我们在同一区域聚集更多需要的信息。

为了能在一个超连接里嵌入一些连接,或许你可能会采用以下方式:

<a href="main_destination.html"

href1="embedded_destination1.html" text1="embedded hypertext1"

href2="embedded_destination2.html" text2="embedded hypertext2"

href3="embedded_destination3.html" text3="embedded hypertext3"

href4="embedded_destination4.html" text4="embedded hypertext4"main hypertext

</a

或者以标签嵌套的方式,比如:

<a href="main_destination.html"main hypertext

<a href="embedded_destination1.html"embedded hypertext1</a

<a href="embedded_destination2.html"embedded hypertext2</a

<a href="embedded_destination3.html"embedded hypertext3</a

<a href="embedded_destination4.html"embedded hypertext4</a

</a

很不幸的是以这种方式根本不能达到要求也不符合HTML规范,如果这样的话会使得头连接忽略附加的那些连接并且把这些连接罗列出来大家都知道,使得用户能接受一些新功能的关键是在于它的可用性。因此,任何扩展连接的方法都不是行之有效的,而应该采用一种类似于导航条的机制以使用户能轻而易举的理解和接受它。我们可以把一个下拉式的图标安置在超连接旁边,点击该图标就会显示那些嵌入的超连接。正如下图所示:

其实这就是我们所熟悉的动态菜单的思想,但它是和HTML文本内容相互独立。虽然每一个菜单仅含有几行HTML代码,但要为每一个含有多重目的文件的超连接都编写这样的代码显然是不切实际的。我们需要一种简单、正式、类似于标记形式的结构,并且易于理解和使用,就像是我们开头提到的那两种方式。这就需要开发者们把注意力集中在内容的是献上而不是规划上。

在我叙述我的解决方法之前,我先提一点,很多支持这种复杂的对于web. xml与它的相关链接标准的工作已经在进行中,比如:XLink 和 XPointer,这俩都是在W3C里定义的标准,允许支持丰富的超链接功能。但这种高级连接标准依然没有被流行的浏览器支持(Internet Explorer就不支持:XLink),另外,:XLink很复杂,对于一般的WEB站点是承受不起的。

下面将来简单阐释一下如何用JSP定制标签(custom Tags)结合XML来创建丰富的超连接。

JSP 标签(Tags)

JSP tags在JSP页面提供了一种可重用性的强大机制,已于读写和维护页面,它使得JAVA

程序员在JSP代码里可以写出XML样式的标签而不是scriptlets,与HTML标记配合更加协调。这些标签是服务器端的资源,这些资源包含了用来为页面产生内容的应用逻辑。这样就增强了用户界面和”内容生成“逻辑之间的划分。

自定义标签(The Custom Tag)

从此处下载源代码(Download the source code for this article)

创建一个定制标签,首先我们先建立一个描述符(TLD)文件,用来描述标签的名字和属性,并把它和一个CLASS文件联系起来。TLD文件是基于XML格式的,放在服务器端的web-inf目录里,这些文件是WEB容器用来验证JSP tags的,下面这个TLD文件名字是multilink.tld:

<tag

<namemulti</name

<tagclassutil.tags.MultiLinkTag</tagclass

<bodycontenttagdependent</bodycontent

<attribute

<nameid</name

<requiredtrue</required

</attribute

<attribute

<namehref</name

<requiredtrue</required

</attribute

<attribute

<nametext</name

<requiredtrue</required

</attribute

<attribute

<namemetalinks</name

<requiredtrue</required

</attribute

<attribute

<nameonmouseover</name

<requiredfalse</required

</attribute

</tag

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有