2010-09-10 90 views
2

我有以下的JavaScript(用jQuery)显示事业部悬停

$(function() { 

    $(".btnDesc").click(function() { 
    $("#desc").slideToggle("slow"); 
    $(this).toggleClass("active"); 
    }); 

当我改变.click(function().hover(function(),符合市场预期,悬停在与class="btnDesc"的链接显示的不是点击的div,但是,我想停止在链接上悬停时显示它,直到您单击隐藏按钮,div才会保留。有了它,我们一旦停止在链接上盘旋,div就会滑回去。

回答

2

您需要使用mouseover而不是hover,它捕获鼠标在链接上移动的事件,但在鼠标移出链接时不绑定鼠标。

+0

非常感谢。 (我会接受这个答案一旦堆栈溢出让我...) – Christopher 2010-09-10 02:31:44

-1

jquery中的悬停函数需要两个函数 - mouseover和mouseout函数...例如,

$(".btnDesc").hover(
     function() { 
      // code to run when mouse hovers in 
      $("#desc").show("slow"); 
      $(this).toggleClass("active"); 
     }, 
     function() { 
      // code to run when mouse hovers out 
      $("#desc").hide("slow"); 
      $(this).toggleClass("active"); 
     } 
    ); 

这将显示您的desc元素,当您悬停时,并将鼠标悬停时隐藏它。如果你遇到困难,这个函数的jquery文档也相当不错。

+0

这是不准确的,它*可以*采取两个功能,或只是一个像他目前。该文档概述了传递一个*或*两个函数:) http://api.jquery.com/hover/ – 2010-09-10 02:40:19