У меня есть простая анимация jquery, где я экспериментирую.Это своего рода игровой автомат с двумя контейнерами.
Что я пытаюсь создать, так это то, что когда вы нажимаете кнопку (контейнер A на экране, статический): контейнер A скользит вверх по экрану с контейнером B, следующим за ним.Затем, когда анимация закончена.Я хочу сбросить позицию контейнера А.
В настоящее время он настроен следующим образом:
CSS:
.containerA { position: fixed; top: 0; width:200px; height: 100vh; }
.containerB { position: fixed; top: 100vh; width: 200px; height: 100vh; }
Jquery:
$("#containerBtrigger").click(function(){
// set z-index first so you wont see container A resetting position.
$(".containerB").css("z-index", "20");
$(".containerA").css("z-index", "0");
//have container B slide upwards into the screen
$(".containerB").animate({
top : "0",}, 500);
//container A slides upwards, out of the screen, when its animation is done, it should set the position to 100vh, out of the viewport.
$('.containerA').animate({
top: '-100vh'
}, 500, function () {
$(this).css({ top : '100vh' }); });
});
Однако всякий раз, когда я нажимаю на кнопку запуска, контейнер, который должен выскользнуть из экрана, скользит вниз, а другой - вверх, как и предполагалось.
Я также пытался заменить функцию обратного вызова animate на:
function () { $(this).removeAttr('style');
Но это тоже ничего не меняет.
Я все еще очень плох с jQuery и не трогал месяцами.Вероятно, есть способ получше настроить игровые автоматы, но на данный момент я абсолютно не в себе.