HTML代碼:按鈕藏匿不正常
<div id="slick-slidetoggle">wxyz</div>
<div id="slickbox" >abcd</div>
的JavaScript:
var hoverVariable=false;
var hoverVariable2=false;
$('#slickbox').hide();
$('#slick-slidetoggle').mouseover(function() {
hoverVariable2=true;
$('#slickbox').slideToggle(600);
return false;
})
$('#slick-slidetoggle').mouseleave(function() {
hoverVariable2=false;
setTimeout(function(){
if(!hoverVariable && !hoverVariable2){
$('#slickbox').slideToggle(600);
return false;}
}, 1000);
})
$('#slickbox').mouseleave(function() {
hoverVariable=false;
setTimeout(function(){
if(!hoverVariable && !hoverVariable2){
$('#slickbox').slideToggle(600);
return false;}
return false;
}, 1000);
})
$('#slickbox').mouseover(function() {
hoverVariable2=false;
hoverVariable=true;
})
CSS代碼:
#slickbox {
background: black;
width:100px;
height: 135px;
display: none;
cursor:pointer;
color:white;
}
#slick-slidetoggle{
background: yellow;
width:100px;
height: 135px;
cursor:pointer;
color:black;
}
現在所期望的行爲是當鼠標在黃格幻燈片(「wxyz」)黑色div(「abcd」)應該滑落,如果鼠標移出黃色而不移動到黑色div,黑色div sho兩秒後隱藏。
發生這種情況。如果在移出黃色div後立即將鼠標移到黑色div上,只要鼠標位於黑色div上,黑色div就不應該隱藏。這也正在發生。
接下來的步驟有點難以解釋,但我會嘗試,當鼠標移動到黃色div和黑色div出來然後鼠標移動到黑色div和兩秒鐘之內,如果它移出它(黑色div)那麼整個動畫就會失靈。它的行爲是相反的。但是,如果鼠標在黑色div上保持兩秒鐘以上,然後將其移出,那麼整個腳本運行良好。
這是解釋更好的鏈接。 http://jsfiddle.net/HAQyK/381/
感謝這個解決方案超級棒。 –