【问题标题】:jQuery: don't mouseout under some circumstancesjQuery:在某些情况下不要鼠标悬停
【发布时间】:2011-11-19 22:21:39
【问题描述】:

我有一个非常基本的问题,我无法解决(可能是因为这里是凌晨 5 点)。可以简化为:

HTML:

<img src="image.jpg" alt="logo" />
<span class="caption">This is a caption</span>

JS:

$("img").mouseover(function() {
    $('.caption').show();
});

$("img").mouseout(function() {
    $('.caption').hide();
});

使用 CSS,我使用 z-index 属性和绝对定位将标题放置在图像顶部。问题是字幕一旦悬停就会消失,然后如果鼠标仍在移动,则会再次出现,导致闪烁的烦恼。

显然,这并不意味着要发生。基本上,当标题本身悬停时,不应调用 mouseover 事件。有人解决了吗?

【问题讨论】:

  • 你可以在你的函数中加入if 语句...
  • 想通了,但我会在里面放什么?

标签: jquery image hover mouseover caption


【解决方案1】:

这个怎么样:

HTML:

<div class="image_hover">
  <img src="image.jpg` alt="logo" />
  <span class="caption">This is a caption</span>
</div>

JS:

$(".image_hover").live({
  mouseenter: function() {
    $(this).find('.caption').show();
  },
  mouseleave: function() {
    $(this).find('.caption').hide();
  }
});

【讨论】:

  • 不敢相信我没有想到这一点。谢谢!
猜你喜欢
  • 1970-01-01
  • 2011-08-04
  • 2016-02-22
  • 2018-10-09
  • 1970-01-01
  • 2022-01-25
  • 1970-01-01
  • 2011-07-07
  • 2014-09-07
相关资源
最近更新 更多