就是鼠标移上去会显示下级菜单的那种效果web.sitemap是根据msdn里来的
<?xml version="1.0" encoding="utf-8" ?>
<siteMap xmlns="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0" >
<siteMapNode title="Home" description="Home" url="~/home.aspx" >
<siteMapNode title="Products" description="Our products"
url="~/Products.aspx">
<siteMapNode title="Hardware"
description="Hardware we offer"
url="~/Hardware.aspx" >
<siteMapNode title="软件"
description="Software for sale"
url="~/Software1.aspx" />
</siteMapNode >
<siteMapNode title="Software"
description="Software for sale"
url="~/Software.aspx" />
</siteMapNode>
<siteMapNode title="Services" description="Services we offer"
url="~/Services.aspx">
<siteMapNode title="Training" description="Training"
url="~/Training.aspx" />
<siteMapNode title="Consulting" description="Consulting"
url="~/Consulting.aspx" />
<siteMapNode title="Support" description="Support"
url="~/Support.aspx" />
</siteMapNode>
</siteMapNode>
</siteMap>
然后程序里
<%@ Page Language="VB" AutoEventWireup="false" CodeFile="main.aspx.vb" Inherits="manage_main" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>无标题页</title>
</head><body>
<form id="form1" runat="server">
<asp:SiteMapDataSource ID="SiteMapDataSource1" runat="server" />
<asp:Menu ID="Menu1" runat="server" DataSourceID="SiteMapDataSource1">
</form>
</body>
</html>
现在只显示第一级菜单home,鼠标移上去只是个普通的链接,怎么让他能弹出二级菜单来?
<?xml version="1.0" encoding="utf-8" ?>
<siteMap xmlns="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0" >
<siteMapNode title="Home" description="Home" url="~/home.aspx" >
<siteMapNode title="Products" description="Our products"
url="~/Products.aspx">
<siteMapNode title="Hardware"
description="Hardware we offer"
url="~/Hardware.aspx" >
<siteMapNode title="软件"
description="Software for sale"
url="~/Software1.aspx" />
</siteMapNode >
<siteMapNode title="Software"
description="Software for sale"
url="~/Software.aspx" />
</siteMapNode>
<siteMapNode title="Services" description="Services we offer"
url="~/Services.aspx">
<siteMapNode title="Training" description="Training"
url="~/Training.aspx" />
<siteMapNode title="Consulting" description="Consulting"
url="~/Consulting.aspx" />
<siteMapNode title="Support" description="Support"
url="~/Support.aspx" />
</siteMapNode>
</siteMapNode>
</siteMap>
然后程序里
<%@ Page Language="VB" AutoEventWireup="false" CodeFile="main.aspx.vb" Inherits="manage_main" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>无标题页</title>
</head><body>
<form id="form1" runat="server">
<asp:SiteMapDataSource ID="SiteMapDataSource1" runat="server" />
<asp:Menu ID="Menu1" runat="server" DataSourceID="SiteMapDataSource1">
</form>
</body>
</html>
现在只显示第一级菜单home,鼠标移上去只是个普通的链接,怎么让他能弹出二级菜单来?
那么menu类的MaximumDynamicDisplayLevels、DisappearAfter都是干嘛用的呢,我试了试,都没成功MaximumDynamicDisplayLevels 获取或设置动态菜单的菜单呈现级别数。
DisappearAfter 获取或设置鼠标指针不再置于菜单上后显示动态菜单的持续时间。
DynamicVerticalOffset 获取或设置动态菜单相对于其父菜单项的垂直移动像素数。
用JS,jQuery才行,或者用repeater嵌套3,4层,在ItemDataBound控件事件里写
我在这里看到可以实现我需要的那种功能
http://www.w3schools.com/aspnet/aspnet_navigation.asp
它有个例子提供,可惜没有源代码下载,按照教程,无法实现,不知道哪里没弄好
<tr>
<td valign="top">
<div id="menu">
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0"
width="950" height="65">
<param name="movie" value="swf/menu.swf" />
<param name="quality" value="high" />
<param name="wmode" value="Transparent" />
<embed src="swf/menu.swf" width="950" height="65" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer"
type="application/x-shockwave-flash" wmode="Transparent"></embed>
</object>
</div>
</td>
</tr>
</table>要不用做成FLASH效果的,就想我这个代码一样的……如果你会FLASH的话
感谢兄弟的热心,你这个等于啥都没说,只是一个flash显示代码而已,真正的东西都在那个swf里面。而那个东西就没有意思了,偶只是想简单的实现一个级联菜单,动用flash的话,偶不如直接写几个链接,哈哈。