我需要在我的jquery动画导航菜单中添加一个活动状态,但似乎无法让它工作。动画效果很好但是我需要它来停止活动标签上的动画(网站中的当前页面)并继续处理其他动画等等。请帮助
这是我的代码
html:
<div id="insideNav">
<ul id="nav">
<li><a href="index.php">Home</a></li>
<li><a href="media.php">Media</a></li>
<li><a href="overview.php">Overview</a></li>
<li><a href="mobile.php">Mobile</a></li>
<li><a href="options.php">Options</a></li>
<li><a href="order.php">Order</a></li>
<li><a href="contact.php">Contact</a></li>
</ul>
</div>
的CSS:
ul#nav {
width:1024px;
margin: 0 auto;
text-align:center;
overflow:hidden;
}
ul#nav li {
float:left;
list-style:none;
}
ul#nav li a {
display:block;
width:108px;
height:76px;
padding:15px 0 0 0;
margin:0 10px 0 10px;
font: italic 16px Georgia,"Times New Roman", serif;
color:#919090;
text-decoration:none;
background: url("../images/dropDown.png") 0 -149px no-repeat;
}
ul#nav li a:hover {
background: url("../images/dropDown.png") 0 0 no-repeat;
color:#ffffff;
}
JQuery的:
$(document).ready(function() {
$("ul#nav li a").addClass("js");
$("ul#nav li a").hover(
function () {
$(this).stop(true,true).animate({backgroundPosition:"(0 0)"}, 200);
$(this).animate({backgroundPosition:"(0 -5px)"}, 150);
},
function () {
$(this).stop(true,true).animate({backgroundPosition:"(0 -149px)"}, 200);
}
);
});
答案 0 :(得分:0)
您可以使用jQuery not()函数并为当前页面添加一个活动的类,例如
$('ul#nav li a').not('.active').hover( ...
等等......
然后假设您当前的页面是媒体,为此添加一个类:
<li><a href="media.php" class="active">Media</a></li>
要完全删除悬停集css:
ul#nav li a.active:hover { background-position: 0 -149px; }