Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Как добавить и удалить класс при нажатии на div? (https://javascript.ru/forum/events/54186-kak-dobavit-i-udalit-klass-pri-nazhatii-na-div.html)

рони 09.03.2015 20:33

Цитата:

Сообщение от Jeick9
В блоке wrap > div у меня содержится label

пример где?

apocalipsis_now 09.03.2015 22:33

Вопрос по схожей теме:
Как быть есть надо, чтобы класс менялся не у дива, по которому нажимают, а по другому?

Нигде не могу найти нормальное решение. (

рони 09.03.2015 22:46

apocalipsis_now,
где код?

laimas 10.03.2015 05:06

рони, на всякий случай

А, ну да, недогляд, или коньяк виноват, был повод :)

apocalipsis_now 10.03.2015 13:14

Есть такой скрипт на jQuery:

.main {
background-image: url(index_2.jpg);
background-repeat: no-repeat;
background-position: left top;
background-size: cover;
}

.div_1 {
background-image: url(bisnes.jpg);
background-repeat: no-repeat;
background-position: left top;
background-size: cover;
}

.div2 {
background-image: url(index_2.jpg);
background-repeat: no-repeat;
background-position: left top;
background-size: cover;
}


<script>
$(document).ready(function(){
$("#div_1").mouseover(function(){
$("#foto").fadeOut(500).addClass("div_1", 500).fadeIn(500);
});
$("#div_2").mouseover(function(){
$("#foto").fadeOut(500).addClass("div_2", 500).fadeIn(500);
});
});
</script>

<div id="div_1" class="pages">БИЗНЕС</div>
<div id="div_2" class="pages">ДЕТИ</div>

При наведении на первый див, фон меняется, а при наведении на второй, остается новая картинка от первого. В чем может быть косяк?

рони 10.03.2015 13:25

apocalipsis_now,
где div foto?

рони 10.03.2015 13:25

apocalipsis_now,
Пожалуйста, отформатируйте свой код!
Для этого его можно заключить в специальные теги: js/css/html и т.п., например:
[js]
... ваш код...
[/js]

О том, как вставить в сообщение исполняемый javascript и html-код, а также о дополнительных возможностях форматирования - читайте http://javascript.ru/formatting.

apocalipsis_now 10.03.2015 13:27

Вот так эта конструкция выглядит:

<table width="100%" height="100%" border="0" cellpadding="0" cellspacing="0" class="main" id="foto">
<tr>
<td>
<div id="div_1" class="pages">БИЗНЕС</div>
<div id="div_2" class="pages">ДЕТИ</div>
</td>
</tr>
</table>

рони 10.03.2015 13:33

Цитата:

Сообщение от apocalipsis_now
addClass("div_2", 500).

Цитата:

Сообщение от apocalipsis_now
.div2 {
background-image: url(index_2.jpg);

может тут ваша проблема?

рони 10.03.2015 14:01

apocalipsis_now,
<!DOCTYPE HTML>

<html>

<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
  .main {   height: 200px;
   width: 200px;
 background-image: url(http://www.vseprokosmos.ru/ris/jevodan.jpg);
 background-repeat: no-repeat;
 background-position: left top;
 background-size: cover;
 }

 .div_1 {
 background-image: url(http://i78.photobucket.com/albums/j81/MariaContria_2006/floorrtr444kf6.jpg);
 background-repeat: no-repeat;
 background-position: left top;
 background-size: cover;
 }

 .div_2 {
 background-image: url(http://club.foto.ru/gallery/images/photo/2004/06/09/218029.jpg);
 background-repeat: no-repeat;
 background-position: left top;
 background-size: cover;
 }
 #div_1, #div_2{
    height: 100px;
    border: #CC0000 2px solid
 }

  </style>
  <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
  <script>
   $(function()
     {
       $("#div_1").click(function()
         {
           $("#foto").fadeOut(500, function()
             {
               $("#foto").addClass("div_1").removeClass("div_2").fadeIn(500)
             }
           );
         }
       );
       $("#div_2").click(function()
         {
           $("#foto").fadeOut(500, function()
             {
               $("#foto").addClass("div_2").removeClass("div_1").fadeIn(500)
             }
           );
         }
       );
     }
   );
  </script>
</head>

<body>
<table width="100%" height="100%" border="0" cellpadding="0" cellspacing="0" class="main" id="foto">
 <tr>
 <td>
 <div id="div_1" class="pages">БИЗНЕС</div>
 <div id="div_2" class="pages">ДЕТИ</div>
 </td>
 </tr>
 </table>


</body>

</html>


Часовой пояс GMT +3, время: 13:17.