Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 06.12.2017, 18:39
Новичок на форуме
Отправить личное сообщение для SharpeR Посмотреть профиль Найти все сообщения от SharpeR
 
Регистрация: 06.12.2017
Сообщений: 2

Изменение свойства CSS
Есть вот это - <div id="case" style="background-position: -975px 0px;"></div>
Надо свойство background-position плавно менять на 0px.
Т.е. чтобы получилось так - <div id="case" style="background-position: 0px 0px;"></div>
Но не рывком, а плавно (-975, -974, -973 ... -2, -1, 0).
Я с JS совсем не дружу. Прошу помощи профессионалов)
Ответить с цитированием
  #2 (permalink)  
Старый 06.12.2017, 19:15
Кандидат Javascript-наук
Отправить личное сообщение для Lion777 Посмотреть профиль Найти все сообщения от Lion777
 
Регистрация: 04.11.2017
Сообщений: 117

тип так
<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <title>Document</title>
</head>

<body>
  <div id="case"></div>
  <script>
    var idCase = document.getElementById('case');
    var i = -975;
    function smoothCh() {
      if (i == 0) clearTimeout(timer);
      else {
        idCase.style.backgroundPosition = i++ + 'px 0px';
        var timer = setTimeout(smoothCh, 20);
      }
    }
    smoothCh();
  </script>
</body>


</html>
Ответить с цитированием
  #3 (permalink)  
Старый 06.12.2017, 19:24
Новичок на форуме
Отправить личное сообщение для SharpeR Посмотреть профиль Найти все сообщения от SharpeR
 
Регистрация: 06.12.2017
Сообщений: 2

Супер. То что нужно. Спасибо!

Но почему скрипт не работает с шапки?

Последний раз редактировалось ksa, 07.12.2017 в 09:06.
Ответить с цитированием
  #4 (permalink)  
Старый 07.12.2017, 13:54
Кандидат Javascript-наук
Отправить личное сообщение для Lion777 Посмотреть профиль Найти все сообщения от Lion777
 
Регистрация: 04.11.2017
Сообщений: 117

так пробуй
<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <title>Document</title>
  <script>
    var i = -975;
    function smoothCh() {
      var idCase = document.getElementById('case');
      if (i == 0) clearTimeout(timer);
      else {
        idCase.style.backgroundPosition = ++i + 'px 0px';
        var timer = setTimeout(smoothCh, 20);
      }
    }
    document.addEventListener('DOMContentLoaded', smoothCh)   
  </script>
</head>

<body>
  <div id="case"></div>
</body>

</html>

Последний раз редактировалось Lion777, 07.12.2017 в 13:56.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Получение вычисленного значения css свойства FanAizu jQuery 2 12.03.2014 20:30
динамическое изменение CSS свойства dikucher jQuery 10 05.12.2013 20:59
Изменение css свойства Rumis jQuery 2 21.05.2013 11:55
Изменение свойства CSS Squirr Events/DOM/Window 30 12.07.2012 22:51
Как узнать о поддержке браузером CSS свойства? estoesyo Элементы интерфейса 3 18.10.2010 22:12