jQuery show div on hover - 在mouseout上隐藏div

时间:2012-11-26 22:34:59

标签: jquery css

我有一个锚标记,当它悬停时,我想要显示某个div(“标记”)。 div不在锚标记内。

HTML如下:

       <a href="#" class="mark"></a>
          <div class="icontent">
                <p>
                lorem ipsum dolor sit amet......
                 </p>
           </div>  

当鼠标悬停在“.mark”上时,应显示“.icontent”。当鼠标移出时,“.icontent”应该再次隐藏。是否也可以向它添加1秒的过渡?

谢谢

6 个答案:

答案 0 :(得分:5)

hover()在这里会很好用:

$('.mark').hover(function() {$('.icontent').show(1000)}, function() {$('.icontent').hide(1000)});

http://api.jquery.com/hover/

答案 1 :(得分:3)

$(".mark").on({
    mouseover: function() {
        $(".icontent").stop().show(1000);
    },

    mouseout: function() {
        $(".icontent").stop().hide(1000);
    }
})

DEMO

答案 2 :(得分:2)

你在这里

HTML

<a href="#" class="mark">hover anchor</a>
<div class="icontent">
  <p>
    lorem ipsum dolor sit amet......
  </p>
</div>  

JS

(function(){
  var del = 200;
  $('.icontent').hide().prev('a').hover(function(){
    $(this).next('.icontent').stop('fx', true).slideToggle(del);
  });
})();

实施例 http://jsbin.com/evehat/1/edit

答案 3 :(得分:1)

$(".mark").hover(function () {
   if (!$(".icontent").is(":animated")) {
      $(".icontent").show('slow');
   }
}, function () {
   $(".icontent").stop().hide('slow');
});​

您也可以单独使用mouseovermouseout。添加:animated.stop是为了防止聪明人重复移动鼠标和锚点。

答案 4 :(得分:0)

$('.mark').hover(function()      {$('.icontent')).fadeIn(1000)},
function(){$('.icontent').fadeOut(1000)});

这应该有效:)

答案 5 :(得分:0)

$(".mark").mouseover(function() {
    $('.icontent').fadeIn(1000);
}).mouseout(function(){
    $('.icontent').fadeOut(1000);
});