图像淡入淡出并显示内容

时间:2013-02-08 11:18:37

标签: php javascript jquery wordpress

我可以在这里得到一些帮助吗

我得到的代码只适用于一张图片,但不适用于内容不同的多张图片

HTML

<ul id="base">
<li class="element" >
<img src="http://farm8.staticflickr.com/7040/6818412114_261c73da06_z.jpg" class="img1"  />
<div style="display:none;" class="content">this is a text message 2</div>
</li>
<li class="element" >
<img src="http://farm8.staticflickr.com/7040/6818412114_261c73da06_z.jpg" class="img1"  />
<div style="display:none;" class="content">this is a text message 2</div>
</li>
</ul>

CSS

.element {float:left;margin-right:15px;border:1px solid red;width:150px;height:150px;}
.element img {
      position:absolute;
      top:0;
      left:0;
      height:150px;
      width:150px;
    }
.content {height:150px;width:150px;background:gray;font-size:9px;}

的jQuery

$(".element").hover(function() {
        //fadeout first image using jQuery fadeOut
        $(".img1").fadeOut(300);
        //fadein second image using jQuery fadeIn 
        $(".content").fadeIn(300);
    }, function () {
        //fadeout second image using jQuery fadeOut
        $(".img1").fadeIn(300);
        //fadein first image using jQuery fadeIn
        $(".content").fadeOut(300);
    });

是测试http://jsfiddle.net/nQvay/1/的小提琴,需要一些帮助

3 个答案:

答案 0 :(得分:1)

您必须指定哪个.img1.content您想要褪色

 $(".element").hover(function() {
            //fadeout first image using jQuery fadeOut
            $(this).children(".img1").fadeOut(300);
            //fadein second image using jQuery fadeIn 
            $(this).children(".content").fadeIn(300);
        }, function () {
            //fadeout second image using jQuery fadeOut
            $(this).children(".img1").fadeIn(300);
            //fadein first image using jQuery fadeIn
           $(this).children(".content").fadeOut(300);
        });

答案 1 :(得分:0)

试试这个

JSFIDDLE

$(document).ready(function(){
$(".element").hover(function() {
            //fadeout first image using jQuery fadeOut
            $(".element").children(".img1").fadeOut(300);
            //fadein second image using jQuery fadeIn 
            $(".element").children(".content").fadeIn(300);
        }, function () {
            //fadeout second image using jQuery fadeOut
           $(".element").children(".img1").fadeIn(300);
            //fadein first image using jQuery fadeIn
           $(".element").children(".content").fadeOut(300);
        });
});

答案 2 :(得分:0)

<ul id="base">
<li class="element" >
<img src="http://farm8.staticflickr.com/7040/6818412114_261c73da06_z.jpg" class="img1"  />
<div style="display:none;" class="content">this is a text message 2</div>
</li>
<li class="element" >
<img src="http://farm8.staticflickr.com/7040/6818412114_261c73da06_z.jpg" class="img1"  />
<div style="display:none;" class="content">this is a text message 2</div>
</li>
</ul>


<style>
ul{
padding:0px;
margin:0px;
list-style:none;
}
.element {float:left;margin-right:15px;border:1px solid red;width:150px;height:150px;position:relative;}
.element img {
      position:absolute;
      top:0;
      left:0;
      height:150px;
      width:150px;
    }
.content {height:150px;width:150px;background:gray;font-size:9px;}
</style>


<script>
$(".element").hover(function() {
        //fadeout first image using jQuery fadeOut
        $(this).children(".img1").fadeOut(300);
        //fadein second image using jQuery fadeIn 
        $(this).children(".content").fadeIn(300);
    }, function () {
        //fadeout second image using jQuery fadeOut
        $(this).children(".img1").fadeIn(300);
        //fadein first image using jQuery fadeIn
        $(this).children(".content").fadeOut(300);
    });
</script>