Показать сообщение отдельно
  #1 (permalink)  
Старый 08.12.2015, 20:45
Аватар для Coriolan161
Профессор
Отправить личное сообщение для Coriolan161 Посмотреть профиль Найти все сообщения от Coriolan161
 
Регистрация: 21.11.2015
Сообщений: 440

А можно ли в конструкции .css('background', '') передавать URL бекграунда строкой?
Привет!

У меня такая конструкция: есть n блоков с бекграундами. У каждого свой. При mouseenter они пропадают. При mouseleave обратно появляются.
Мне интересно: кто сталкивался с неявным заданием URL-адреса в .css()???
Можно ли его задавать в виде строковой переменной???

Я забиваю все изображения в массив
array arr=array(n);
     arr[0]=' \'url(images/image0.png)  no-repeat\' ';
     arr[1]=' \'url(images/image1.png)  no-repeat\' ';
     ...
     arr[n]=' \'url(images/imagen.png) no-repeat\' ';


Дальше организую обработку событий
$('.block').on({
                        mouseenter: function() {
                                          $(this).css('backgroundImage', 'none');
                                                         },
 
                        mouseleave: function() {
                                              var number = $('.block').index(this);
                                              $(this).css('background', arr[number]);
                                                         }
        });


Таким образом я узнаю индекс блока в наборе и в качестве URL в .css() забиваю элемент массива с указанием соответствующего пути.

Таким образом - Ничего не работает! Поэтому и обращаюсь к вашему опыту.
Ответить с цитированием