我有一个 System.Web.UI.WebControls.Menu,当您单击顶层时它会被关闭。
请参阅截屏视频http://www.screencast.com/t/puCmErPVp
我不希望它在被点击时被解雇。我希望菜单保持下来。
菜单项由站点地图填充。
Menu 对象上有什么东西可以用来获得这种行为吗?也许我可以使用一些 javascript 或 CSS 来防止它消失?
我有一个 System.Web.UI.WebControls.Menu,当您单击顶层时它会被关闭。
请参阅截屏视频http://www.screencast.com/t/puCmErPVp
我不希望它在被点击时被解雇。我希望菜单保持下来。
菜单项由站点地图填充。
Menu 对象上有什么东西可以用来获得这种行为吗?也许我可以使用一些 javascript 或 CSS 来防止它消失?
我用一些Javascript修复了它。
基本上,之前发生的事情是将 document.body.onclick 设置为 Menu_HideItems。我对其进行了更改,以便 document.body.onclick 可以调用我自己的函数,并在隐藏菜单项之前检查您单击的内容。
<script type="text/javascript" language="javascript">
function HideMenuOnClick(item) {
var target;
if (item.target) {
target = item.target;
}
else if (item.srcElement) {
target = item.srcElement;
}
if (target.className.indexOf("StaticMenuItemStyle") == -1)
{
Menu_HideItems(item);
}
else
{
return false;
}
}
document.body.onclick = HideMenuOnClick;
</script>
似乎您有与 asp:menu 一起使用的第三方组件,如果是,您需要其源代码来修改悬停动作<li>
,如果没有,则有一些客户端 javascripts 或 css 样式,您可以修改它们。