在 img 鼠标悬停时显示 div (jquery)

Posted

技术标签:

【中文标题】在 img 鼠标悬停时显示 div (jquery)【英文标题】:Display div on img mouseover (jquery) 【发布时间】:2013-02-03 06:33:54 【问题描述】:

所以我正在研究将显示文本 div 的图像的鼠标悬停效果。我已经设置好了css,但是我在使用Jquery 时遇到了问题。我在 wordpress 主题中使用这个内联,我想知道这是否是我的问题。

<script type="text/javascript" src="scripts/jquery.js"></script>
<script type="text/javascript">
    $(".imgHover").hover(function() 
        $(this).children("img").fadeTo(200, 0.25)
        .end().children(".hover").show();
    , function() 
        $(this).children("img").fadeTo(200, 1)
        .end().children(".hover").hide();
    );
</script>

<div class="imgHover">
    <div class="hover">Test Content for the hover</div>
    <img src="http://www.google.com/intl/en_ALL/images/logo.gif"  />
</div>

谁能帮帮我?

【问题讨论】:

api.jquery.com/ready 【参考方案1】:

将您的代码包装在$(document).ready

$(document).ready(function() 
    $(".imgHover").hover(function() 
        $(this).children("img").fadeTo(200, 0.25).end()
            .children(".hover").show();
    , function() 
        $(this).children("img").fadeTo(200, 1).end()
            .children(".hover").hide();
    );
);

或使用event delegation:

$(document).on("mouseover",".imgHover",function() 
    $(this).children("img").fadeTo(200, 0.25).end()
            .children(".hover").show();
).on("mouseleave",".imgHover", function() 
    $(this).children("img").fadeTo(200, 1).end()
            .children(".hover").hide();
);

【讨论】:

顺便说一句,您可以在整个代码中将.end().children(".hover") 替换为siblings(".hover")

以上是关于在 img 鼠标悬停时显示 div (jquery)的主要内容,如果未能解决你的问题,请参考以下文章

在悬停时显示 div(固定位置和溢出隐藏父级)

使用 jQuery 在悬停时显示隐藏类

使用jQuery在悬停时显示隐藏类

仅在鼠标悬停 div 时显示滚动条

display属性 鼠标悬停时显示隐藏内容,

如何在鼠标悬停时显示隐藏的 div?