我想做这样的事情。
<a href="#" class="change-hover" >
<img src="img/image-1.jpg" alt=""/>
<img src="img/image-2.jpg" alt=""/>
</a>
<a href="#" class="change-hover" >
<img src="img/image-3.jpg" alt=""/>
<img src="img/image-4.jpg" alt=""/>
</a>
默认情况下,'image-1.jpg'&amp; img / image-3.jpg等...应显示,鼠标悬停在'a'标签上,隐藏第一张图片并显示'image-2.jpg'&amp; 'image-4.jpg'等..
如需参考,请查看此产品显示。 http://www.thecorner.com/searchResult.asp?dept=tcshoesw&brand=25&gender=D&norewrite=1
感谢。
答案 0 :(得分:2)
你不需要jQuery这样做,因为你可以使用vanilla JS甚至CSS轻松完成。
你可以通过这样做来节省页面加载时间(在vanilla JS中):
<a href="#">
<img src="img/image-1.jpg" onmouseover="this.src = 'img/image-2.jpg'" onmouseout="this.src = 'img/image-1.jpg'">
</a>
<a href="#">
<img src="img/image-3.jpg" onmouseover="this.src = 'img/image-4.jpg'" onmouseout="this.src = 'img/image-3.jpg'">
</a>
答案 1 :(得分:0)
如果您的目标是在悬停时显示第二张图片并将其隐藏在mouseout
上,并显示第一张图片,那么您可以使用hover
方法,如下例所示。
请注意,第二张图片最初是用CSS隐藏的。
$('.change-hover').hover(function () {
$(this).find('img').hide().last().fadeIn();
}, function () {
$(this).find('img').hide().first().fadeIn();
});
&#13;
.change-hover img {
display: none;
}
.change-hover img:first-of-type {
display: inherit;
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<a href="#" class="change-hover">
<img src="http://lorempixel.com/100/100/food/1" alt=""/>
<img src="http://lorempixel.com/100/100/food/2" alt=""/>
</a>
<a href="#" class="change-hover">
<img src="http://lorempixel.com/100/100/food/3" alt=""/>
<img src="http://lorempixel.com/100/100/food/4" alt=""/>
</a>
&#13;
答案 2 :(得分:0)
您可以使用CSS:
.change-hover {
float: left;
}
.change-hover img + img {
display: none;
position: absolute;
top: 0;
}
.change-hover img:hover + img, .change-hover img + img:hover {
display: block;
}
检查this fiddle。