切换课程不能很好

时间:2012-05-07 18:44:49

标签: jquery css hover toggle

在我的应用程序中,并排列出了一堆图像。当悬停图像时,显示关于图像的信息(描述,标题等)。这在大多数情况下都有效,但很多时候都没有。

例如,当我悬停图像并重新加载页面时,切换在此图像上以另一个方向工作,即。默认情况下显示隐藏的div,当我将鼠标悬停时它隐藏(在所有其他图像上它工作正常)。

这真烦人,我不知道如何解决它。下面是这个代码(希望它已经足够了)。

如果有人能帮助我,我将不胜感激。

JS:

    $('.post').hover(function () {
        var image = $(this);
        image.find('.postDesc').toggle();
    });

HTML:

<div class="post">
    <img class="images" src="../images/image.png">
    <div class="postDesc">
        // other code...

CSS:

.post {
    background: white;
    width: 200px;
    height: 200px;
    margin: 0px auto;
    float: left;
    margin-right: 30px;
    margin-bottom: 30px;
    position: relative;
    padding: 5px;
    -moz-box-shadow: 0 0 4px 1px #777;
    -webkit-box-shadow: 0 0 4px 1px#777;
    box-shadow: 0 0 4px 1px #777;
}

.postDesc {
    background-color:rgba(136, 136, 136, 0.35);
    color: white;
    width: 180px; 
    height:180px; 
    display:none; 
    position:absolute;
    margin: 5px;
    left: 0;
    bottom: 0;
    padding: 10px;
}

2 个答案:

答案 0 :(得分:2)

我会尝试使用toggleClass方法:

$(this).find(".postDesc").toggleClass("post");

请参阅this jsFiddle进行演示。

答案 1 :(得分:0)

$('.post').hover(
 function () {
     $('.postDesc', $(this)).addClass('post');
 },
 function() {
     $('.postDesc', $(this)).removeClass('post');
 });