我正在使用jQuery在悬停时为我的导航按钮添加颜色更改动画。
我有.menu-horizontal
和.menu-vertical
。但由于某些原因,animate函数适用于.menu-horizontal
,但不适用于.menu-vertical
。
垂直菜单的颜色不会改变。
<script type="text/ecmascript">
$(document).ready(function () {
$(".menu-horizontal ul li a").hover(function() {
$(this).stop().animate({ height: "31px", backgroundColor: "#3185b7" }, 600);
}, function() {
$(this).stop().animate({ height: "31px", backgroundColor: "#4fb3d3" }, 600);
});
$(".menu-vertical ul li a").hover(function() {
$(this).stop().animate({ height: "31px", backgroundColor: "#3185b7" }, 600);
}, function() {
$(this).stop().animate({ height: "31px", backgroundColor: "#4fb3d3" }, 600);
});
});
</script>
答案 0 :(得分:1)
您无法仅使用jQuery为background-color
制作动画。
(例如,宽度,高度或左边可以设置动画,但
background-color
不能。但
来源:http://api.jquery.com/animate/#animation-properties
选项1:首先使用background-color
设置.css()
,然后设置高度动画。
选项2 :使用plugin来促进background-color
动画。