您的位置:首页 > 产品设计 > UI/UE

轻松掌握Ajax.net系列教程十三:使用HoverMenuExtender

2008-06-17 11:36 816 查看
本章主要介绍HoverMenuExtender的使用方法。我们以前要做一个js下拉菜单会很麻烦,不但要写很多代码,而且写出来的代码不好管理,扩展性也很难做到很好。但现在我们有了HoverMenuExtender,一切都将迎刃而解,我们的口号是:不编码!

第一步:建立AJAX Control Toolkit Website

本例子只需要一个Panel控件、N个Linkbutton控件和一个HoverMenuExtender组件,把他们都拖进设计界面,代码如下所示:

[align=left]<asp:Panel BorderWidth=1px ID="Panel1" runat="server" Height="50px" Width="125px" CssClass="panel">[/align]
[align=left] <asp:LinkButton ID="LinkButton2" runat="server">长江一号</asp:LinkButton>[/align]
[align=left] <asp:LinkButton ID="LinkButton3" runat="server">长江二号</asp:LinkButton>[/align]
[align=left] <asp:LinkButton ID="LinkButton4" runat="server">长江三号</asp:LinkButton>[/align]
[align=left] <asp:LinkButton ID="LinkButton5" runat="server">长江四号</asp:LinkButton>[/align]
[align=left]</asp:Panel>[/align]
<asp:LinkButton ID="LinkButton1" runat="server">鼠标放上来就能看到HoverMenu啦!
</asp:LinkButton>
在这里LinkButton1主要负责激活下拉菜单,而Panel1则是下拉菜单的载体。

完成控件布局后我们还需要写一个简单的样式,令界面更美观,具体代码如下:

[align=left].panel[/align]
[align=left]{[/align]
[align=left] background:#ffcc00;[/align]
[align=left] filter:alpha(opacity=80);[/align]
[align=left] border-width:1px;[/align]
[align=left] border-color:#000000;[/align]
[align=left] font-size:12px;[/align]
[align=left] visibility:hidden;[/align]
[align=left]}[/align]
注意:大家可以想象,既然Panel1是下拉菜单的载体,那么当菜单未被激活的时候,Panel1应该是隐藏着的,这些都通过ScriptManager来控制。但当页面第一次加载,Ajax.net的脚本库还没完全加载完毕的时候,Panel1就会处于短暂的失控状态。如果网速较慢,我们会发现Panel1会先出现一下,然后再隐藏起来,这会影响页面的美观。所以我们应该在Panel1的样式上加上visibility:hidden,让Panel1一开始就处于隐藏状态。

第二步:配置HoverMenuExtender

HoverMenuExtender同样是只需配置即可使用的组件,具体配置如下所示:

[align=left]<ajaxToolkit:HoverMenuExtender [/align]
[align=left] OffsetX="10" [/align]
[align=left] OffsetY="10" [/align]
[align=left] PopDelay="1000" [/align]
[align=left] ID="HoverMenuExtender1" [/align]
[align=left] runat="server" [/align]
[align=left] TargetControlID="LinkButton1"[/align]
[align=left] PopupControlID="Panel1" [/align]
[align=left] PopupPosition="bottom">[/align]
</ajaxToolkit:HoverMenuExtender>
OffsetX和OffsetY是指菜单在当前对齐方式下所处位置的偏移距离,OffsetX越大,菜单向左偏得移越大,OffsexY越大,菜单向下偏移得越大,单位是像素。PopDelay是指菜单消失的延迟时间,单位是毫秒。TargetControlID是指激活菜单的控件ID,这里应该是LinkButton1。PopupControlID是指菜单载体的控件ID, 这里是Panel1。最后的PopupPosition是指菜单相对于激活控件对齐方式,大家按照需要选择。

OK,运行,效果如下图:



鼠标移开后,菜单消失。



结束:

本章主要介绍了HoverMenuExtender的使用方法。HoverMenuExtender令我们可以轻松制作下拉菜单,而无需编写大量脚本代码。由于我们可以从后台访问菜单项,这使我们可以轻松从数据库中取出数据,并制作成下拉菜单。本章只是一个比较粗陋的例子,如果大家想把下拉菜单做得更炫,那需要对HoverMenuExtender进行更复杂的设置并结合更复杂的CSS样式。

TrackBack:http://www.cnblogs.com/sbitxg521/archive/2007/12/29/1020313.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: