Я знаю, как исправить анимацию, которая спускается только тогда, когда изображение появляется в окне с jQuery, но теперь я хочу сделать это с помощью JavaScript. Борясь с этим. Изображение должно быть свободно вниз (+ 50 пикселей на 1,6 секунды). У вас есть googling, но большинство из них сделаны с помощью jQuery, который я предлагаю, и это не то, что я хочу. Furtermore анимация должна начинаться, когда scrollTop находится между 600 и 800 пикселей.Изображение animate down javascript (no jQuery)
function scrollFunction() {
\t var animate = document.getElementById("picture");
\t var position = 0;
var top = 0;
\t var scrollTop = window.pageYOffset || document.documentElement.scrollTop;
\t if(scrollTop > 600 && scrollTop < 800){
\t \t position++;
\t \t animate.style.top = position + "50px";
\t } else {
\t \t stop();
\t }
}
function stop() {
\t clearTimeout(animate);
}
#picture {
\t width: 100%;
\t height: auto;
\t top: -5px;
\t position: relative;
\t display: block;
\t margin-left: auto;
\t margin-right: auto;
\t margin-bottom: 20px;
}
<div class="col-sm-12 col-xs-12">
<h1 class="responsive-h1">Mi<span class="logo-orange"> Pad2</span></h1>
<p class="edition-title above-text-black">Black Edition</p>
<img src="Img/picture.jpg" id="picture"/>
</div>
Это то, что консоль сказал aimation.js: 16 Uncaught TypeError: Не удалось выполнить «getComputedStyle» на «Окно»: Параметр 1 не относится к типу «Элемент». –
Мой плохой 'getComputedStyle' работает только в хром, в основном вам нужно установить свойство' top' css '0' на элемент, посмотреть мой новый ответ за секунду – Canvas