我正在使用辅助导航的网站,当用户将鼠标悬停在主导航标题上时,辅助导航会下降。我希望这些下拉菜单更像是一个“正常”的下拉菜单,它会在点击时消失。
通常情况下,这不是问题,但由于此站点依赖于辅助导航的锚定链接,因此下拉后使用后会出现问题。 本身并不是很烦人,但是我更喜欢它表现得更像人们通常期望的下降行为。
不幸的是,我对jQuery / javascript的能力不足,而且我的时间很短。
非常感谢任何协助。
这是Javacript:
function closeList1() {
var list = document.getElementById("list1");
if (list.style.display == "block"){
list.style.display = "none";
}
}
function closeList2() {
var list = document.getElementById("list2");
if (list.style.display == "block"){
list.style.display = "none";
}
}
HTML ...
<ul class="nav">
<li>
<a href="#first" onClick="closeList1">FIRST</a>
<ul class="first" onClick="closeList1" id="list1">
<li><a href="#firstone">ONE</a></li>
<li><a href="#firsttwo">TWO</a></li>
<li><a href="#firstthree">THREE</a></li>
<li><a href="#firstfour">FOUR</a></li>
</ul>
</li>
<li>
<a href="#second" onClick="closeList2">SECOND</a>
<ul class="second" onClick="closeList2" id="list2">
<li><a href="#secondone">ONE</a></li>
<li><a href="#secondtwo">TWO</a></li>
<li><a href="#secondthree">THREE</a></li>
<li><a href="#secondfour">FOUR</a></li>
</ul>
</li>
</ul>
和CSS ...
ul.nav li ul{
list-style:none;
padding: 0;
margin: 0;
position:absolute;
display: block;
left:-9999px;
}
ul.nav li ul li{
float:none;
padding: 0;
margin: 0;
display: block;
}
ul.nav li ul li a{
white-space: nowrap;
margin: 0;
padding: 0;
display: block;
}
ul.nav li:hover ul{
left:0;
top: 0;
}
无论如何,感谢您查看它,以及您可能给予的任何帮助。
答案 0 :(得分:0)
尝试使用onclick的JavaScript函数。您可以将其用作参考:display:none; displays 'none' in browser
答案 1 :(得分:0)
jquery是你的选择吗?你标记并提到它但你似乎没有使用它。
click()
和
hover()
函数会派上用场。我在这里放了一个快速小提琴,并举例说明它是如何工作的: