【发布时间】:2013-08-11 14:32:45
【问题描述】:
早安,
我有这些 div(s) 容器,其中 2 个内部 div(s) 分别包含 (a) 图像和 (b) 文本描述。
我在页面加载时使用 .hide() 隐藏这些 (b) 文本描述 div,然后使用 .hover() 显示/隐藏隐藏的文本描述 div,示例代码如下:
<div class="projectBlock">
<div class="imgBlock" id="imgBlock1"><a href="http://www.tesco.com.my" target="_blank"><img src="http://i23.photobucket.com/albums/b395/yiyonglee/thumb-project-tesco.jpg"></a>
</div>
<div class="descBlock" id="descBlock1">Tesco Malaysia</div>
显示/隐藏工作正常,除非鼠标悬停区域命中描述文本区域内的某个位置,否则 div 容器在移动时会闪烁。
我的 jQuery 部分:
$('.descBlock').hide();
$('#imgBlock1').hover(function () {
$('#descBlock1').show();
}, function () {
$('#descBlock1').hide();
});
$('#imgBlock2').hover(function () {
$('#descBlock2').show();
}, function () {
$('#descBlock2').hide();
});
在这里演示:jsfiddle
为什么会这样?提前致谢。
【问题讨论】:
-
如果您将鼠标悬停在说明上,说明会隐藏(因为您不再位于#imgBlock 上方)。然后你再次用鼠标移到#imgBlock 上,描述就会出现。
标签: jquery mouseover show-hide