0

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

我的代码仅适用于一张图片,但不适用于具有不同内容的多张图片

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/的小提琴,需要一些帮助

4

3 回答 3

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);
        });
于 2013-02-08T11:24:26.243 回答
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);
        });
});
于 2013-02-08T11:27:58.390 回答
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>
于 2013-02-08T18:36:31.647 回答