我有一个菜单,会在hover()
上显示一个滑块。我这样写了
$(".menu2").hover(function ()
{
$(".slider").slideDown(500);
$(".slider").css('display','block');
},
function () {
$(".slider").slideUp(500);
//$('.slider').css("display","none");
});
这会显示滑块。(我喜欢使用slideDown()
和slideUp()
看起来不错)。当我将cursor
移动到滑块时,它会返回display:none
状态。所以我尝试了这个
$(".sliderHolder").hover(function ()
{
$(".slider").css('display','block');
},
function () {
$(".slider").slideUp(500);
});
});
在我从display:none
移动光标后,我将滑块设置为menu
状态。有没有更简单的方法来做到这一点?
答案 0 :(得分:2)
您是否期待
http://jsfiddle.net/jUraw/1369/
<ul id="nav">
<li><a href="home.html"><span>M</span>enu</a>
<ul>
<li><a href="fashion.html"><span>F</span>ashion</a></li>
<li><a href="about-us.html"><span>A</span>bout <span>U</span>s</a></li>
<li><a href="find-us.html"><span>F</span>ind <span>U</span>s</a></li>
<li class="underline"><a href="http://www.bellissimafashions.com/blog/"><span>B</span>log</a></li>
</ul>
</li>
</ul>
$(document).ready(function (){
var t = null;
$('#nav li').hover(function(){
var that = this;
t = setTimeout(function(){
$('ul', that).slideDown(200);
t = null;
}, 300);
}, function(){
if (t){
clearTimeout(t);
t = null;
}
else
$('#nav li ul').slideUp(200);
});
});