我正在尝试使用Javascript创建自己的导航栏,这就是我到目前为止的内容。
$(document).ready(function() {
<nav class="menuL">
<ul id="menu">
<li><a href="#!/page_portfolio" id="portmenu"><span></span>portfolio</a></li>
<ul id="submenu">
<li id="first"><a href="#!/">Wine</a></li>
<li id="second"><a href="#!/">Landscape</a></li>
<li id="third"><a href="#!/">Divers</a></li>
</ul>
<script>
$('#submenu').hide();
</script>
<script>
if ($('#portmenu').mouseover() || $('#first').mouseover() || $('#second').mouseover() || $('#third').mouseout()) {
$('#submenu').show();
} else {
$('#submenu').hide();
}
});
</script>
子菜单实际上是被隐藏的,但是当我将鼠标悬停在portmenu上时,该子菜单不会出现..关于错误的任何想法?我是javascript新手,所以我不知道即时消息是否正确使用了选择器,OR运算符和if语句。
基本上我想做的是,如果主菜单被悬停了,或者第一,第二和第三被悬停了,那么显示子菜单。否则,将其隐藏。我之所以这样做是因为,如果我只是在悬停了portmenu的情况下创建了一个显示子菜单的函数,那么当我悬停文本“ portfolio”时,该子菜单就会消失。
最佳答案
jsFiddle Demo
您可能应该利用jQuery's hover沿着这些思路做更多的事情:
$('#submenu').hide();
$('#portmenu, #first, #second, #third').hover(function(){
//in
$('#submenu').show();
},function(){
//out
$('#submenu').hide();
});
关于javascript - 使用Java if语句以及and运算符和选择器来创建导航栏,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17625611/