我想要做一个非常非常简单的鼠标悬停动画改变背景位置。Animate backgroundPostion总是返回50%?
JS
$('li.services_w')
.css({
backgroundPosition: "0px 0px"
})
.mouseover(function() {
$(this).stop().animate({
backgroundPosition: "(0px -35px)"
}, {
duration: 500
})
})
.mouseout(function() {
$(this).stop().animate({
backgroundPosition: "(0px 0px)"
}, {
duration: 200,
complete: function() {
$(this).css({
backgroundPosition: "0px 0px"
})
}
})
});
除了每次我运行此代码,背景总是返回background-position: 0 50%
为鼠标悬停的结果。不管我改变那些数字!我向你保证这是我使用的唯一的JavaScript。
CSS
.services_w {
height: 35px;
overflow:hidden;
background: url("../img/services_w.jpg") repeat 0px 0px;
}
.services_w:hover {
background-position: 0px -35px;
}
HTML
<div class="grid_10 nav">
<ul class="lavaLamp">
<li class="current"><a href="index.html">home</a></li>
<li class="services_w"><a href="services.html">services</a></li>
...
尝试移除它周围的“()”。 – 2010-10-09 22:12:42
我觉得尼克得到了它==> http://jsfiddle.net/nr75d/ --------------最后,用'.hover()'==>保存几个关键笔划。 http://jsfiddle.net/Sqv6Q/ – 2010-10-09 22:15:20
@nick craver,你在说什么()? – Trip 2010-10-09 22:17:08