Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 15.07.2018, 15:51
Кандидат Javascript-наук
Отправить личное сообщение для Начинающий-Js-кодер Посмотреть профиль Найти все сообщения от Начинающий-Js-кодер
 
Регистрация: 12.06.2016
Сообщений: 130

Как сделать подсветку элемента
Есть такой HTML код:
<div style="border: 2px black solid; padding:50px; height: 100px;" id="nested1">
    <div style="border: 1px blue solid; height: 100px; text-align:center;line-height:100px" id="nested2">
	DROP
    </div>
</div>

Как на Jquery сделать чтобы при наведении на nested1 он подсвечивался, а если навожу на nested2 nested1 не подсвечивался, а только nested2 подсвечивался.
Что-то с вложенностью. а как правильно не знаю.
Спасибо.
Ответить с цитированием
  #2 (permalink)  
Старый 15.07.2018, 16:07
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

Начинающий-Js-кодер,
<!DOCTYPE html>

<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
  div.act{
        background-color: #FFD700;
  }
   div.act  div{
      background-color:  #FFFFFF;
  }

  </style>
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>

  <script>
$(function() {
$("div").on("mouseover mouseout", function(event) {
   event.stopPropagation();
   $(this).toggleClass("act")
})
});
  </script>
</head>

<body>
<div style="border: 2px black solid; padding:50px; height: 100px;" id="nested1">
    <div style="border: 1px blue solid; height: 100px; text-align:center;line-height:100px" id="nested2">
	DROP
    </div>
</div>

</body>
</html>
Ответить с цитированием
  #3 (permalink)  
Старый 15.07.2018, 16:37
Кандидат Javascript-наук
Отправить личное сообщение для Начинающий-Js-кодер Посмотреть профиль Найти все сообщения от Начинающий-Js-кодер
 
Регистрация: 12.06.2016
Сообщений: 130

Спасибо большое вам
Ответить с цитированием
  #4 (permalink)  
Старый 15.07.2018, 16:51
Кандидат Javascript-наук
Отправить личное сообщение для Начинающий-Js-кодер Посмотреть профиль Найти все сообщения от Начинающий-Js-кодер
 
Регистрация: 12.06.2016
Сообщений: 130

А как быть если для одного дива надо одно свойство, а для другого другое? То есть добавлять всем act не выйдет. одному надо act1 другому act2
Ответить с цитированием
  #5 (permalink)  
Старый 15.07.2018, 16:56
Кандидат Javascript-наук
Отправить личное сообщение для Начинающий-Js-кодер Посмотреть профиль Найти все сообщения от Начинающий-Js-кодер
 
Регистрация: 12.06.2016
Сообщений: 130

или можно сделать это как то на css?
Ответить с цитированием
  #6 (permalink)  
Старый 15.07.2018, 19:11
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

Сообщение от Начинающий-Js-кодер
на css?
скорее всего нет.
Сообщение от Начинающий-Js-кодер
А как быть если для одного дива надо одно свойство, а для другого другое?
не понял
Ответить с цитированием
  #7 (permalink)  
Старый 15.07.2018, 19:58
Кандидат Javascript-наук
Отправить личное сообщение для Начинающий-Js-кодер Посмотреть профиль Найти все сообщения от Начинающий-Js-кодер
 
Регистрация: 12.06.2016
Сообщений: 130

Сообщение от рони Посмотреть сообщение
не понял
Ну если будет не один див вложенный и чтобы каждому диву свой класс добавлять.
Ответить с цитированием
  #8 (permalink)  
Старый 15.07.2018, 20:16
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

Сообщение от Начинающий-Js-кодер
Ну если будет не один див вложенный и чтобы каждому диву свой класс добавлять.
по прежнему не понимаю, код работает для любой вложенности!

<!DOCTYPE html>

<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
  div.act{
        background-color: #FFD700;
  }
   div.act  div{
      background-color:  #FFFFFF;
  }
  div{
      margin: 20px;
      border: 2px black solid;
  }

  </style>
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>

  <script>
$(function() {
$("div").on("mouseover mouseout", function(event) {
   event.stopPropagation();
   $(this).toggleClass("act")
})
});
  </script>
</head>

<body>
<div>
    <div>
        <div>
            <div>
                <div>
                    <div></div>
                </div>
            </div>
        </div>
    </div>
</div>

</body>
</html>
Ответить с цитированием
  #9 (permalink)  
Старый 15.07.2018, 21:57
Кандидат Javascript-наук
Отправить личное сообщение для Начинающий-Js-кодер Посмотреть профиль Найти все сообщения от Начинающий-Js-кодер
 
Регистрация: 12.06.2016
Сообщений: 130

<div>
	    <div>
	        <div>
	            <div>
	                <div class="cl1">
	                    <div></div>
	                </div>
<div class="cl2">
	                    <div></div>
	                </div>
	            </div>
	        </div>
	    </div>
	</div>

Для cl1 надо присвоить класс act1 а для cl2 act2. При этом cl1,cl2 могут быть на любой вложенности. так яснее?
Ответить с цитированием
  #10 (permalink)  
Старый 15.07.2018, 22:12
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

Начинающий-Js-кодер,
<!DOCTYPE html>

<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
  div.act{
        background-color: #FFD700;
  }
   div.act  div{
      background-color:  #FFFFFF;
  }
  div{
      margin: 20px;
      border: 2px black solid;
  }
 .act.act1 {
     background-color: #FF1493;
 }
 .act.act2 {
     background-color: #FF4500;
 }
  </style>
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>

  <script>
$(function() {
$("div").on("mouseover mouseout", function(event) {
   event.stopPropagation();
   var cls = "act";
   if($(this).is(".cl1")) cls += " act1";
   if($(this).is(".cl2")) cls += " act2";
   $(this).toggleClass(cls)
})
});
  </script>
</head>

<body>
<div>
	    <div>
	        <div>
	            <div>
	                <div class="cl1">
	                    <div></div>
	                </div>
<div class="cl2">
	                    <div></div>
	                </div>
	            </div>
	        </div>
	    </div>
	</div>


</body>
</html>
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ajax. Как сделать загрузку изображений, отображение, удаление как на Авито wowtschuk AJAX и COMET 1 07.03.2017 01:34
Акардион меню из чекбоксов и списка, как сделать подсветку текущего элемента OliLoi jQuery 0 08.11.2016 08:15
Как сделать чтобы кнопка «Назад» работала бы в пределах определенного сайта? Askeer Общие вопросы Javascript 7 14.10.2016 12:23
как сделать чтобы в popup окне показывалось картинка? sarik Общие вопросы Javascript 31 15.03.2013 13:12
Как сделать постоянную проверку на javascript alb Общие вопросы Javascript 18 09.01.2010 14:05