2013-06-29 144 views
1

你好這裏的人是我的jQuery代碼。jquery如果鼠標離開或鼠標輸入條件

$(val1+","+val2).mouseleave(function(){ 

    $('.opacity').remove(); 
    $(val3).show(); 
    $(val4).hide(); 

}); 

我想以這樣的方式,經過

$(val1+","+val2).mouseleave(function(){ 
    if mouse doe not enter val3 or val4 
then 
    $('.opacity').remove(); 
$(val3).show(); 
$(val4).hide(); 
else 
    nothing.... 

像...

$(val1 + "," + val2).mouseleave(function() { 

    if ($(val3 + "," + val4).mouseenter) { 
    } else { 
     $('.opacity').remove(); 
     $(val3).show(); 
     $(val4).hide(); 
    } 

}); 

顯然以上不工作... IAM錯附近某處編輯該代碼如果條件如何解決這個問題?

+0

它也將幫助,如果你顯示/解釋如何val1-更新變量玩4相對於彼此定位。 從我看到的 - 我可以說你可以添加「mouseenter」處理程序到val3/4並添加「不透明度」。 – mishik

+0

我認爲你不需要塊內的if else語句。只需$()。mouseenter可能會做到這一點,因爲我相信這是事件綁定正在完成的地方 –

回答

1

你應該根據mouseentermouseleave有關val3val4

var isHoverSpecialDiv = false; 

$(val3 + "," + val4).hover(
    function(){ 
     isHoverSpecialDiv = true; 
    }, 
    function(){ 
     isHoverSpecialDiv = false; 
    } 
}); 

並測試它

$(val1 + "," + val2).mouseleave(function() { 

    //Test condition 
    if (isHoverSpecialDiv == false) 
    { 
     $('.opacity').remove(); 
     $(val3).show(); 
     $(val4).hide(); 
    } 
}); 
相關問題