Jquery关闭?

时间:2016-04-15 18:43:27

标签: jquery

我这里有这个代码:

$('.fa').hover(function(){
    $('#hiddenStuff').show();    
});

当用户将鼠标悬停在此元素上时,会出现另一个元素,当您将.fa元素悬停时,如何使此元素消失?

3 个答案:

答案 0 :(得分:5)

hover接受2次回调。当鼠标离开元素时调用第二个:

$('.fa').hover(function(){
      $('#hiddenStuff').show();
}, function(){
      $('#hiddenStuff').hide();
});

附注:根据您的HTML,您可以避免在此处使用javascript:

div {
    padding: 20px;
}
.fa {
    background: lightblue;
}
#hiddenStuff {
    display: none;
    background: yellow;
}
.fa:hover ~ #hiddenStuff {
    display: block;
}
<div class=fa>FA (move the mouse over here)</div>
<div id=hiddenStuff>hiddenStuff</div>

答案 1 :(得分:1)

使用toggle()方法,如下所示。

$('.fa').hover(function(){
    $('#hiddenStuff').toggle();
});
#hiddenStuff{
    display: none;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<span class="fa">Hover</span>
<br/>
<span id="hiddenStuff">Show/Hide</span>

答案 2 :(得分:0)

可选地

$('.fa').mouseenter(function(){
//what you want on mouse enter
}

$('.fa').mouseleave(function(){
//what you want on mouse exit
}

允许特异性,如果您只使用.hover(),则允许使用.hover回调。