Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 26.04.2014, 20:55
Интересующийся
Отправить личное сообщение для kefalia Посмотреть профиль Найти все сообщения от kefalia
 
Регистрация: 16.12.2013
Сообщений: 21

Изменение фона div при наведении
Добрый вечер. Была задача: при наведении div-обертка и вложенный в него div должны были изменяться (обертка менять фон, а вложенный div - размер).

Сделала так:
$(document).ready(function(){
    $('#usluga-1').hover(
        function(){
            $(this).css('background-image','url(/images/uslugi-pictures/uslugi-7-1.jpg)');
            $('#usluga-1 #black-rect').css('-webkit-transform','scale(1.1)');
            $('#usluga-1 #black-rect').css('-moz-transform','scale(1.1)');
            $('#usluga-1 #black-rect').css('-o-transform','scale(1.1)');
        },
        function(){
            $(this).css('background-image','url(/images/uslugi-pictures/uslugi-7.jpg)');
            $('#usluga-1 #black-rect').css('-webkit-transform','');
            $('#usluga-1 #black-rect').css('-moz-transform','');
            $('#usluga-1 #black-rect').css('-o-transform',''); 
        }
    );
     $('#usluga-2').hover(
        function(){
            $(this).css('background-image','url(/images/uslugi-pictures/uslugi-6-1.jpg)');
            $('#usluga-2 #black-rect').css('-webkit-transform','scale(1.1)');
            $('#usluga-2 #black-rect').css('-moz-transform','scale(1.1)');
            $('#usluga-2 #black-rect').css('-o-transform','scale(1.1)');
        },
        function(){
            $(this).css('background-image','/images/uslugi-pictures/uslugi-6.jpg)');
            $('#usluga-2 #black-rect').css('-webkit-transform','');
            $('#usluga-2 #black-rect').css('-moz-transform','');
            $('#usluga-2 #black-rect').css('-o-transform',''); 
        }
    );

HTML
<div id="usluga-1">
<div id="black-rect">
<div>Текст</div>
</div>
</div>
<div id="usluga-2">
<div id="black-rect">
<div>Текст</div>
</div>
</div>

CSS
#black-rect{
-moz-transition: all 0.5s ease-out;
-o-transition: all 0.5s ease-out;
-webkit-transition: all 0.5s ease-out;
}


Все работает.

Вопрос: как можно сократить данный монструозный код, чтобы не стыдно было его отдать заказчику вместе с сайтом? Спасибо!
Ответить с цитированием
  #2 (permalink)  
Старый 26.04.2014, 21:48
Аватар для Vlasenko Fedor
Профессор
Отправить личное сообщение для Vlasenko Fedor Посмотреть профиль Найти все сообщения от Vlasenko Fedor
 
Регистрация: 13.03.2013
Сообщений: 1,572

Сообщение от kefalia
чтобы не стыдно было его отдать заказчику
переписать все в CSS
Ответить с цитированием
  #3 (permalink)  
Старый 26.04.2014, 22:06
Профессор
Отправить личное сообщение для alex.vv Посмотреть профиль Найти все сообщения от alex.vv
 
Регистрация: 15.04.2014
Сообщений: 176

Сообщение от Poznakomlus Посмотреть сообщение
переписать все в CSS
+1
Переходите на CSS и классы, а то получается забивание гвоздей микроскопом.
Ответить с цитированием
  #4 (permalink)  
Старый 27.04.2014, 18:27
Аватар для ruslan_mart
Профессор
Отправить личное сообщение для ruslan_mart Посмотреть профиль Найти все сообщения от ruslan_mart
 
Регистрация: 30.04.2012
Сообщений: 3,018

http://learn.javascript.ru/play/bHvCJ

<!DOCTYPE HTML>
<html>
  
  <head>
    <style>
      .main {
        background: #AAA;
        height: 200px;
        padding: 20px;
        width: 200px;
      }
      .main-child {
        background: #DDD;
        border: 1px solid red;
        height: 50px;
        width: 50px;
      }
      .main:hover {
        background: #BBB;
      }
      .main:hover .main-child {
        transform: scale(1.1);
        -moz-transform: scale(1.1);
        -o-transform: scale(1.1);
        -webkit-transform: scale(1.1);
      }
    </style>
  </head>
  
  <body>
    <div class="main">
      <div class="main-child">Test</div>
    </div>
  </body>

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



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Расшрение DIV при наведении мыши. OD_RS Элементы интерфейса 1 27.05.2013 21:49
Изменение свойств одного блока при наведении курсора на другой latter-day Events/DOM/Window 4 01.04.2013 18:35
при нажатии на картинку(типа кнопки) скрывать и показывать DIV Russianmaniac Элементы интерфейса 4 28.11.2010 00:47
menu с выпадающими подменю при наведении и раздвижное при клике bugor Элементы интерфейса 3 04.10.2010 14:32
Изменение изображения при наведении на ссылку MDS Общие вопросы Javascript 1 08.08.2008 21:54