我有一个System.Web.UI.WebControls.Menu,点击顶层时会被解雇。
请参见截屏视频http://www.screencast.com/t/puCmErPVp
我不希望它被点击时被解雇。我希望菜单保持不变。
菜单项由站点地图填充。
我可以使用Menu对象上的任何内容来获取此行为吗?也许我可以使用一些javascript或CSS来防止它消失?
答案 0 :(得分:0)
似乎你有第三方组件与asp:menu一起使用,如果是,你需要它的源代码来修改<li>
的悬停动作,如果没有,有一些客户端javascripts或css样式,你可以修改它们。
答案 1 :(得分:0)
我用一些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>