就 Jquery 而言,我已经搜索并搜索了选项,但我似乎找不到任何可以满足我想要的东西,但它似乎是一个如此简单的效果。谁能告诉我如何让下图中的菜单项像第二项一样滑出,当有人将鼠标悬停在它上面时?
问问题
832 次
3 回答
2
$('.menuClass').mouseover(function(){
$(this).animate({'marginTop':'100px'});
});
$('.menuClass').mouseout(function(){
$(this).animate({'marginTop':'0px'});
});
相应地更改 marginTop 的值。
这些也将有助于:
http://api.jquery.com/mouseover/
于 2012-07-24T14:18:53.623 回答
2
您可以为此使用多个 css 动画方法。
jQuery:
$('div').bind({
mouseenter: function() {
$(this).stop().animate({'background-position-y':'-20px','height':'68px'},600);
},
mouseleave: function() {
$(this).stop().animate({'background-position-y':'-58px','height':'30px'},600);
}
});
CSS:
div {
background: url(http://i.stack.imgur.com/g3aqx.jpg) -146px -58px;
float:left; width:86px; height:30px;
}
----------------------------------
或者
您只需使用 CSS3 就可以做到这一点:
div {
float:left; background: url(http://i.stack.imgur.com/g3aqx.jpg) -146px -58px;
width:86px; height:30px;
transition: .5s;
-moz-transition: .5s; /* Firefox 4 */
-webkit-transition: .5s; /* Safari and Chrome */
-o-transition: .5s; /* Opera */
}
div:hover { background-position-y:-20px; height:68px; }
于 2012-07-24T14:22:16.243 回答
1
您可以使用动画 jquery 方法:
$("#img").hover(function() {
$(this).stop();
$(this).animate({top:"0"},500,null);
}, function () {
$(this).stop();
$(this).animate({top:"-150"},500,null);
});
于 2012-07-24T14:25:24.890 回答