2
내가 개발하고있는 메뉴에 버그가 있습니다. 메뉴에 빠르게 마우스를 올려 놓을 때까지 모두 잘 돌아갑니다.Jquery의 메뉴 버그
버그는 파이어 폭스와 크롬에서도 다르다. 파이어 폭스와 크롬에서는 버그가 다르다. 파이어 폭스에서는 무한한 버그가되고, 크롬에서는 몇 초 동안 지속된다. 그러면 사라진다.
<div id="menu" class="ui-accordion-header ui-helper-reset ui-state-default ui-corner-all">
<label class="formatText" id="lblIndicators">Primer Menu</label>
<span class="ui-icon ui-icon-triangle-1-e menuIcon" style="float:right"></span>
<div id="subMenu" class="ui-accordion-header ui-helper-reset ui-state-default ui-corner-all">
<ul class="options">
<li>
<label class="formatText">Sub Menu Uno</label>
<span class="ui-icon ui-icon-triangle-1-s" style="float:right"></span>
<div id="subMenuRight" class="ui-accordion-header ui-helper-reset ui-state-default ui-corner-all">
<ul class=options>
<li>Sub-Sub Menu Uno</li>
<li>Sub-Sub Menu Dos</li>
</ul>
</div>
</li>
<li>Sub Menu Dos</li>
</ul>
</div>
</div>
가 여기 내 jQuery의 :
여기 내 HTML 코드의
$(document).ready(initialize);
function initialize(){
$("#menu").hover(mouseIn,mouseOut);
$(".options li").hover(overOption,outOption);
$("#subMenu").hover(openRightMenu,closeRightMenu);
}
function mouseIn(){
$(this).find('span').attr('class','');
$(this).find('span').attr('class','ui-icon ui-icon-triangle-1-s');
$("#subMenu").slideDown(100);
}
function mouseOut(){
$(this).find('span').attr('class','');
$(this).find('span').attr('class','ui-icon ui-icon-triangle-1-e');
$("#subMenu").fadeOut(100);
}
function overOption(){
$(this).attr('class','ui-state-hover ui-corner-all');
}
function outOption(){
$(this).attr('class','');
}
function openRightMenu(){
$("#subMenuRight").slideDown(100);
}
function closeRightMenu(){
$("#subMenuRight").slideUp(100);
}
Here's a live demo on jsFiddle
도움이 될 것입니다!
저장 한 바이올린의 특정 버전에 대한 링크를 제공 할 수 있습니다. –
사과. 이제 추가했습니다. – XGreen
작동했지만 호버의'mouseOut' 함수에서'stop (true, true)'를 제거하고'mouseIn'에서만 사용하면 효과가 좋습니다. Thx! – Luis