Я пытаюсь заставить div анимироваться между относительным положением и фиксированным положением при прокрутке, поэтому, когда вы прокручиваете вниз, вы видите, что div скользит от его относительного положения вправо (фиксированное положение), поэтому теперь он может следовать за вами вниз по странице.
Я использую путевые точки для функции прокрутки и использую jquery для добавления класса, затем я пытаюсь использовать анимацию css, чтобы заставить ее работать. Пока что цвет фона исчезает, а затем просто прыгает вправо. Я надеялся заставить его скользить. Любые идеи/помощь были бы потрясающими.
Вот мой код:
Путевые точки/jquery:
$('.course-list').waypoint(function(direction){
if(direction === 'down'){
$('.course-list').addClass('side-bar');
} else {
$('.course-list').removeClass('side-bar');
}
},{offset:'66px'});
Примечание. Я также пытался добавить продолжительность для добавления/удаления класса, но у меня это не сработало.
CSS:
section.content .introduction ul.course-list{position:relative;margin:0;padding:0;list-style:none;-webkit-transition: all 1.5s ease;-moz-transition: all 1.5s ease;-o-transition: all 1.5s ease;transition: all 1.5s ease}
section.content .introduction ul.course-list.side-bar{-webkit-animation:slideRight 1.5s forwards;-moz-animation:slideRight 1.5s forwards;-o-animation:slideRight 1.5s forwards;animation:slideRight 1.5s forwards}
@-webkit-keyframes slideRight{
to{position:fixed;top:0;bottom:0;right:0;background:#ff9}
}
@-moz-keyframes slideRight{
to{position:fixed;top:0;bottom:0;right:0;background:#ff9}
}
@-o-keyframes slideRight{
to{position:fixed;top:0;bottom:0;right:0;background:#ff9}
}
@keyframes slideRight{
to{position:fixed;top:0;bottom:0;right:0;background:#ff9}
}
Примечание. Я также пытался установить абсолютное позиционирование, но у меня это все равно не работает.
HTML:
<ul class="course-list">
<li>Testing only</li>
<li>Testing only</li>
<li>Testing only</li>
<li>Testing only</li>
<li>Testing only</li>
</ul>
Скрипка:
https://jsfiddle.net/gpv38jsv/
(он настроен сделать это сразу, поэтому просто нажмите «Выполнить», и вы увидите прыжок)
position:fixed
в начале, а затем анимировать свойство left и right. - person Bhuwan   schedule 19.01.2018