我試圖創建頁面的側邊欄垂直滾動菜單與下面的代碼的jQuery: HTML:
的jQuery:錯誤的mouseenter()鼠標離開()動畫
<ul class="side-menu">
<li id="menu1" ><a href="#">Item-1</a>
<ul class="inner-side-menu" id="menu1_inner">
<li><a href="#">Sub-item</a></li>
<li><a href="#">Sub-item</a></li>
<li><a href="#">Sub-item</a></li>
</ul>
</li>
<li id="menu2"><a href="#">Item-2</a>
<ul class="inner-side-menu" id="menu2_inner">
<li><a href="#">Sub-item</a></li>
<li><a href="#">Sub-item</a></li>
<li><a href="#">Sub-item</a></li>
</ul>
</li>
<li id="menu3"><a href="#">Item-3</a>
<ul class="inner-side-menu" id="menu3_inner">
<li><a href="#">Sub-item</a></li>
<li><a href="#">Sub-item</a></li>
<li><a href="#">Sub-item</a></li>
</ul>
</li>
<li id="menu4"><a href="#">Item-4</a>
<ul class="inner-side-menu" id="menu4_inner">
<li><a href="#">Sub-item</a></li>
<li><a href="#">Sub-item</a></li>
<li><a href="#">Sub-item</a></li>
</ul>
</li>
JQuery
:
<script type="text/javascript">
$('#menu1').mouseenter(function(){
$('#menu1_inner').show('slow');
}).mouseleave(function(){
$('#menu1_inner').hide('slow');
});
//Similar for #menu2, #menu3 and #menu4
</script>
我得到一個非常weired錯誤,在正常情況下代碼運行良好,但如果我把鼠標移過#menu1/2/3/4
並立即離開比相應#menu_inner
動畫兩次或三次好像它具有相同的效果多次動畫沒有鼠標進入或葉。
什麼是真正發生在這裏?什麼是解決方案? p.s .:我在firefox 10,IE9,Maxthon 3和Opera 11中測試了這個錯誤。
http://api.jquery.com/stop/ – j08691 2012-02-17 21:02:30