Я знаю, что вы спрашивали, как это сделать с помощью jQuery, но, пожалуйста, позвольте мне предложить другое решение.Обычно, когда нет необходимости использовать javascript (особенно в настоящее время jQuery), я стараюсь избегать его, если могу получить тот же результат, используя только CSS .
Я верю, что правильно вас понимаючто вы пытаетесь показать с появлением и исчезанием изображения при наведении, чтобы заменить другое изображение.
Код ниже делает это без JavaScript.Существует ловушка, из-за которой вы будете загружать изображения, которые, возможно, никогда не будут отображаться, поэтому, возможно, вы захотите лениво загрузить изображения, которые должны исчезнуть при использовании javascript.
Удачи, и пусть сила будет с вами.
.items {
display: flex;
flex-wrap: wrap;
justify-content: space-around;
}
.items .item {
width: 400px;
height: 400px;
display: block;
position: relative;
}
.items .item span{
position: absolute;
left: 0;
right: 0;
top: 20px;
text-align: center;
}
.items .item img:nth-child(2){
position: absolute;
left: 0;
top: 0;
opacity: 0;
transition: opacity 1s;
}
.items .item:hover img:nth-child(2){
opacity: 1;
}
<div class="items">
<div class="item">
<a href="#">
<img src="http://www.facetheforce.today/han-old/400" alt="Han Solo Old">
<img src="http://www.facetheforce.today/han/400" alt="Han Solo">
<span>Han Solo</span>
</a>
</div>
<div class="item">
<a href="#">
<img src="http://www.facetheforce.today/luke-old/400" alt="Luke Old">
<img src="http://www.facetheforce.today/luke/400" alt="Luke">
<span>Luke</span>
</a>
</div>
</div>