Задать вопрос
@Nank91dtok100kg
Новичёк

Как измененить картинки при наведение на цвет?

Проблемка такая на странице есть 9 картинок, про наведению на цвета под картинками, картинка должна меняться, сделал так
<div class="col-md-4">
									<div class="holder">			
										<a href="#cart_tovara_1" class="buttons">
											<div class="tovar">
												<img src="/imag/catalog/001/bel.jpg" alt="Fytbolkin">
												<span class="knop_zakazat">Заказать</span>
												<div class="tovar_info">
													<h3>Никто кроме нас</h3>
													840<i class="fa fa-rub" aria-hidden="true"></i>
												</div>
												<div class="blok_color_mini">
													<ul>
														<li tkey="white" data-title="белый цвет" class="active" data-url="imag/catalog/001/bel.jpg"><span style="background:#FFFFFF;"></span></li>
														<li tkey="blue" data-title="синий цвет" data-url="imag/catalog/001/sin.jpg"><span style="background:#1400ad;"></span></li>
														<li tkey="green"  data-title="зеленый цвет" data-url="imag/catalog/001/zel.jpg"><span style="background:#10c81d;"></span></li>
														<li tkey="lightgray" data-title="Серый цвет" data-url="imag/catalog/001/ser.jpg">
													</ul>
												</div>	
											</div>	
										</a>
									</div>
								</div>

								<div class="col-md-4">
									<div class="holder">			
										<a href="#cart_tovara_2" class="buttons">
											<div class="tovar">
												<img src="/imag/catalog/002/ser.jpg" >
												<span class="knop_zakazat">Заказать</span>
												<div class="tovar_info">
													<h3>С нами бог</h3>
													770<i class="fa fa-rub" aria-hidden="true"></i>
												</div>
												<div class="blok_color_mini">
													<ul>
														<li tkey="white" data-title="белый цвет"  data-url="imag/catalog/002/bel.jpg"><span style="background:#FFFFFF;"></span></li>
														<li tkey="green"  data-title="зеленый цвет" data-url="imag/catalog/002/zel.jpg"><span style="background:#10c81d;"></span></li>
														<li tkey="lightgray" class="active"data-title="Серый цвет" data-url="imag/catalog/002/ser.jpg"><span style="background:#b0b0b0;"></span></li>
													</ul>
												</div>
											</div>	
										</a>
									</div>
								</div>
И т.п.

$(".blok_color_mini>ul>li").hover(function() {
    $(".white img:first").attr("src", $(this).data("url"));
  });


Но при наведение на любой цвет, картинка меняется у всех сразу или если добавить :first меняется только у первого. Как сделать?

Вот что получается
3bceb53a805740b691c4ad1018220af4.png
5a3ffc2107a84a4287b940d046d95c4c.png
  • Вопрос задан
  • 196 просмотров
Подписаться 1 Оценить Комментировать
Решения вопроса 1
@forevist
Front-End Developer
$(".blok_color_mini>ul>li").hover(function(e) {
    $(e.target).closest("img").attr("src", $(this).data("url"));
  });

вроде вот так должно заработать

Если что-то не выходит - смотрите документацию по closest и разбирайтесь сами :)
https://api.jquery.com/closest/
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
@LiguidCool
Мм, чем бороться со сложными подчинениями css, проще набросать простейшую функцию на JS.
Ответ написан
Комментировать
@lega
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы