2

我正在尝试在悬停图像上显示描述,但是当悬停在图像上时,所有图像都会显示描述。我有以下代码....

    <?php if ($product['thumb']) { ?>
    <div class="image"><a href="<?php echo $product['href']; ?>"><img src="<?php echo $product['thumb']; ?>" alt="<?php echo $product['name']; ?>" /></a></div>
    <?php } ?>

    <div style="display:none;" class="de"> Nunc ornare adipiscing orci eu consectetur. Ut justo libero, porttitor ac elementum luctus, bland..

    <img alt="Based on 2 reviews." src="catalog/view/theme/kid/stars1-4.png"/>
    </div>

    <script type="text/javascript">
    $this('.image').hover(function() {
    // mouseOver function
        $('.de').show();
    }, function() {
    // mouseOut function
    $('.de').hide();
    });
    </script>
4

3 回答 3

1
<img src="/some/dir" title="Your description" alt="alternate text"/>

是添加描述的正确方法。请注意,我不太确定这是否是您要问的。

于 2013-01-01T10:19:09.260 回答
0

首先,您的 div 不显示,并且您的图像在其中。所以不会显示。

<div style="display:none;" class="de"> Nunc ornare adipiscing orci eu consectetur. Ut justo libero, porttitor ac elementum luctus, bland..
</div>
<img alt="Based on 2 reviews." src="catalog/view/theme/kid/stars1-4.png"/>

当有更多图像时,您是否有一个示例说明您的 html 的外观?这是我想出的javascript,带有您当前的html:

<script type="text/javascript">
    $('img').hover(function() {
    // mouseOver function
        $(this).prev('.de').show();
    }, function() {
    // mouseOut function
        $(this).prev('.de').hide();
    });
</script>​

我使用了选择器“img”。但是您可能想要使用一个类,并且可能使用一个委托(http://api.jquery.com/on/)

这是小提琴:http: //jsfiddle.net/BvLPY/6/

快乐编码!

于 2013-01-01T10:18:57.200 回答
0

更新

.next()在此脚本中使用:

只需找到悬停 div 的下一个.imagediv

<script>
$(function(){
    $('.image').hover(function() {
    // mouseOver function
        $(this).next('.de').show();
    }, function() {
    // mouseOut function
        $(this).next('.de').hide();
    });​
});
</script>

在小提琴中找到这个:http: //jsfiddle.net/SufeL/

于 2013-01-01T10:20:28.063 回答