@inkyrein
Начинаю постигать WEB-программирование

Как изменить css одного div при наведении на другой с javascript?

Привет всем
подскажите пожалуйста,
как сделать что бы при наведении на ссылку внутри дива nonsun менялся допусти background ссылки в диве daddy?
<div class="daddy"><a>need-url</a></div>
<div class="notsun"><a>url</a></div>

какое-то есть решение на js или css ?
  • Вопрос задан
  • 30108 просмотров
Пригласить эксперта
Ответы на вопрос 7
Symphony
@Symphony Куратор тега CSS
@ATLANT1S
Back-end developer
$('.notsun a').on('mouseover', function() {
    $('.daddy a').css('color','red');
});
Ответ написан
Комментировать
Выше правильно сказали, но только хорошим тоном считается стили выносить всё же в таблицу стилей, а в скриптах добавлять и убирать класс при наведении.
$(".notsun a").hover(function () {
    $('.daddy a').toggleClass("hovered");
 });
Ответ написан
undassa
@undassa
Last.Backend
$('.notsun a').on('mouseover', function(){
  $('.daddy a').css('background-color','red');
})


как то так.. насчет селектора могу ошибаться, так что лучше проверить в документации jQuery.
Ответ написан
virtyaluk
@virtyaluk
На CSS как два пальца...впрочем, вот так:
.notsun:hover + .daddy a
{
   //custom css rules
}
Ответ написан
@inkyrein Автор вопроса
Начинаю постигать WEB-программирование
Alexander Kaloshin: Спасибо. Но вот я понял, что я неправильно описал вопрос - у меня таких пар много - т.е. это меню - каждая пара дива закрыта в

<li>
<div class="daddy"><a>need-url1</a></div>
<div class="notsun"><a>url1</a></div>
</li>
<li>
<div class="daddy"><a>need-url2</a></div>
<div class="notsun"><a>url2</a></div>
</li>

Мне посоветовали использовать prev(), но как его подвязать к Вашим методам не пойму.
Ответ написан
Комментировать
@Frank777
При наведении на .notsun a к .daddy a добавится класс active который описывай как хочешь. На этом сайте слева под логотипом есть карта функций. Очень удобная штука для начинающих.

$(document).ready(function(){
	$('li').each(function(){
		$('.notsun a').on('mouseover', function() {
			$('.daddy a').toggleClass('active');
		});
	});
});


Это более продвинутое решение но его надо окультурить под себя
$(document).ready(function(){
	$('body').on('mouseover', '.notsun a ', function(e){
		e.preventDefault();
		$(this).closest('li').find('.daddy a').toggleClass('active');
	});
});
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы