我有一个使用下面代码的菜单栏,当点击标题列表项时,他们调用showHide函数将内部列表的类更改为带有显示块的类而不是无。
在ie6和ff上工作正常,镀铬歌剧等等。但在ie7上,内部列表在主列表中的其他元素下呈现。我尝试的一切似乎都打破了其他浏览器。
任何帮助都非常感激。
<ul id="FOOMENU" style="list-style-type: none; padding-left: 10px; text-decoration: none;">
<li class="navItemsHeader"><b>View by..</b></li>
<li>
<b><a style="text-decoration:none;" href="javascript:void(0);" onclick="showHide('foobarMenu');">foobar..</a></b>
</li>
<li id="foobarMenu" class="hideMenu">
<ul style="list-style-type:none; padding-left:10px; text-decoration:none; ">
<li>DYNAMIC LIST OF LINKS HERE.</li>
</ul>
</li>
答案 0 :(得分:1)
我会处理像jQuery这样的javascript库,因为它会处理所有跨浏览器的问题,并且有一些有用的方法,如toggle()来显示和隐藏元素。< / p>
jQuery代码类似于
$(".hideMenu").click(function() {
$(this+"> ul").toggle();
});
另外,如果你想隐藏以前显示的子菜单,你可以使用它:
$(".hideMenu").click(function() {
$(".hideMenu > ul").hide();
$(this).children("ul").show();
});