2012-01-26 109 views
0

http://jsfiddle.net/2CkKW/5/禁止使用懸停功能變量

我想有意見,您將在按下第一個按鈕一個按鈕,它會然後切換到鼠標懸停顏色,並顯示「添加註釋」按鈕。然後,當用戶再次點擊評論按鈕時,它將回到「不支持」狀態並隱藏「添加評論」按鈕。

感謝您的幫助,希望不要太措辭理解。

+1

您應該複製代碼關閉的jsfiddle並張貼在這裏,在事件後人它可以幫助別人在未來的jsfiddle消失關閉網絡的面貌。另外,您使用當前代碼的實際困難是什麼?這將有助於確定什麼不按預期工作。 – lsuarez

回答

1

只需在hover第一個處理程序中檢查if(showing == 0)條件。但不是使用全局變量,您可以檢查添加註釋按鈕的可見性。試試這個

$("#commentsempty").hover(
    function(){ 
     if(!$("#addcomment").is(':visible')){ 
      $(this).css("background-position", "-148px"); 
      $("#commentsstatus").css("color", "#35a4de"); 
     } 
    }, 
    function(){ 
    $(this).css("background-position", "-185px"); 
    $("#commentsstatus").css("color", "#484848"); 
}) 

$("#commentsempty").click(function(){ 
    if(!$("#addcomment").is(':visible')){ 
     $("#addcomment").fadeIn(500); 
     $(this).css("background-position", "-148px"); 
     $("#commentsstatus").css("color", "#35a4de"); 
    }else{ 
     $("#addcomment").fadeOut(500); 
     $(this).css("background-position", "-185px"); 
     $("#commentsstatus").css("color", "#484848"); 
    } 
}); 

Demo

+0

你的演示似乎不起作用? – obkso

+0

是的,它的工作原理我在Chrome中創建了演示。 – ShankarSangoli

+0

我能夠使你的建議哦,如果(顯示== 0)的內部工作。感謝您的幫助 – obkso

3

我已經縮短你的一點:)按下碼至4行:

$("#commentsempty").click(function() { 
    $("#addcomment").toggle(500); 
    $(this).toggleClass('over'); 
}); 

http://jsfiddle.net/2CkKW/10/

我的建議是:利用CSS的地方這是可能的,它可以在CSS中完成。