我对此有点挣扎,我可以整天隐藏/显示/淡入淡出/淡出,但我试图让我的头脑围绕在我的元素中定位一个元素并在鼠标悬停时拉出它的具体描述的逻辑,我已经接近得到这个但感觉我错过了一些东西,下面是我的 HTML:
<ul id="menu" class="menu">
<li><a href="">Home</a></li>
<li id="menu1" class="menu-link"><a href="/">LINK1</a></li>
<li id="menu2" class="menu-link"><a href="/">LINK2</a></li>
<li id="menu3" class="menu-link"><a href="/">LINK3</a></li>
<li id="menu4" class="menu-link"><a href="/">LINK4</a></li>
</ul>
<div id="menu1content" class="menuDescription">
Description for "menu1"
</div>
<div id="menu2content" class="menuDescription">
Description for "menu2"
</div>
<div id="menu3content" class="menuDescription">
Description for "menu3"
</div>
<div id="menu4content" class="menuDescription">
Description for "menu4"
</div>
这是我的CSS,想法是将描述定位在其对应的上方
.menu{
font-family: 'LeagueGothicRegular';
position: absolute;
top:25px;
overflow:hidden;
right:100px;
float:right;
}
.menu ul{
float:left;
width:100%;
padding:0;
margin:0;
list-style-type:none;
}
.menu li{
display:inline;
clear:both;
position:relative;
overflow:hidden;
}
.menu li a{
float:left;
width:6em;
}
.menuDescription {
font-size: 11px;
color: rgb(0, 0, 0);
position: absolute;
right: 407px;
margin-left: 5px;
top: 15px;
}
最后是jquery:
$(document).ready(function() {
$('div.menuDescription').hide();
$('li.menu-link').bind('mouseover', function() {
$('#' + $(this).attr('id') + 'content').prependTo("li.menu-link").fadeIn();
})
.mouseout(function() {
$('#' + $(this).attr('id') + 'content').fadeOut();
});
});