我有点厌倦了用于动画的 Javascript 长脚本并决定尝试 jQuery,但似乎我什至被最简单的代码困住了。
CSS:
#menu {float: right; font: italic 16px/16px Verdana, Geneva, sans-serif;}
ul#nav {list-style: none;}
ul#nav li {float: left; padding-right: 10px;}
ul#nav li a {color: white;}
ul#subnav {float: right; list-style: none; padding: 0; display: none;}
ul#subnav li {float: left; padding: 10px 5px; white-space: nowrap;}
ul#subnav li a {color: white;}
脚本:
$(document).ready(function() {
$('.nav').hover(function() {
$(this).find('#subnav').stop().animate({width:'toggle'},350);
});
});
HTML:
<div id="menu">
<ul id="nav">
<li class="nav">
<a href="#"><img src="images/icon-home.png" width="36" height="36"/></a>
<ul id="subnav">
<li><a href="#">Home</a></li>
</ul>
</li>
<li class="nav">
<a href="#"><img src="images/icon-signin.png" width="36" height="36"/></a>
<ul id="subnav">
<li><a href="#">Sign In</a></li>
</ul>
</li>
<li class="nav">
<a href="#"><img src="images/icon-register.png" width="36" height="36"/></a>
<ul id="subnav">
<li><a href="#">Create Account</a></li>
</ul>
</li>
<li class="nav" style="padding-right: 0;">
<a href="#"><img src="images/icon-mail.png" width="36" height="36"/></a>
<ul id="subnav">
<li style="padding-right: 0;"><a href="#">Contact Us</a></li>
</ul>
</li>
</ul>
</div>
这是示例页面:http: //v1n-vampire.com/dev/jq-animation-stuck
如果您继续从左到右然后再从左到左悬停在导航上,最终动画将卡住。如何解决这个问题?