2012-01-26 57 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中完成。