只是想知道如何才能使它 100% 正确工作。我想我快到了。
基本上,我有一个图像,当我将鼠标悬停在上面时,我希望在顶部显示一个叠加层(它是一个彩色的 div)。
我在这个 fiddle 中有这个半工作.
<img src="http://mirrorchecker.com/images/rod_160.png" width="160"
class="company-image"/>
<div class="company-image-overlay"></div>
/* CSS */
.company-image
{
}
.company-image-overlay
{
width: 160px;
height: 160px;
background-color: #ffb00f;
z-index: 1;
opacity: 0.5;
position: fixed;
top: 0.5em;
display:none;
}
/* JQUERY */
$('.company-image').mouseover(function()
{
$('.company-image-overlay').show();
});
$('.company-image').mouseout(function()
{
$('.company-image-overlay').hide();
});
问题似乎是当覆盖出现时,鼠标不再技术上位于 .company-image
上,因此我们不断循环 over/out 和闪烁的背景。
有什么想法吗?
最佳答案
最简单的解决方案是为两个元素添加一个包装元素:
<div class="wrap">
<img src="http://mirrorchecker.com/images/rod_160.png" width="160" class="company-image" />
<div class="company-image-overlay"></div>
</div>
并将 mouseover
/mouseout
方法放置到 那个 元素:
$('.wrap').mouseover(function () {
$('.company-image-overlay').show();
}).mouseout(function () {
$('.company-image-overlay').hide();
});
关于JQuery 鼠标悬停图像叠加,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15722997/