У меня есть куча этих 90х900 изображений, которые выпадают при загрузке страницы. Анимация для этого только добавляется в родительский элемент, выбирая все лики в списке, которые являются изображениями. Начальная позиция изображений - -1000px, а анимация css - для преобразования от 0px до 1000px на оси Y, и они остаются там с .Как вызвать вторую анимацию при нажатии
Я хочу, чтобы это было, когда я нажимаю кнопку, они возвращаются в исходное положение -1000 пикселей.
Это мои анимации, первая - это анимация загрузки начальной страницы, вторая - то, что я хочу запускать при нажатии.
@keyframes mainpic {
from {transform: translateY(0px);}
to {transform: translateY(1000px);}
}
@keyframes mainpicleave {
from {transform: translateY(1000px);}
to {transform: translateY(0px);}
}
Поэтому я добавил анимацию загрузки страницы в .main-pic li
так добавляет к каждому li
в ul
. И затем я установил animation-delay
из 0.2s больше, чем последний на каждые li
.
.main-pic li {
float: left;
margin-left: 7px;
z-index: -1;
position: relative;
top: -1000px;
box-shadow: 3px 0px 10px black;
animation-name: mainpic;
animation-fill-mode: forwards;
animation-duration: 3s;
}
.main-pic-01 {
background-image: url('../images/dropdown-main/main-pic-01.png');
height: 900px;
width: 90px;
animation-delay: 0.2s;
}
.main-pic-02 {
background-image: url('../images/dropdown-main/main-pic-02.png');
height: 900px;
width: 90px;
animation-delay: 0.4s;
}
Поэтому я думал, что могу просто добавить еще один класс с анимацией на нем с помощью jQuery. Я сделал этот класс:
.main-pic-toggle-leave {
animation-name: mainpicleave;
animation-duration: 2s;
animation-fill-mode: forwards;
}
Так что я пробовал пару разных вещей с помощью jQuery. Я подумал, может быть, если бы я удалил класс pre exisiting с начальной анимацией на нем, а затем на нем был toggleClass
, что он сработает. Но это не так.
$('#btn_01').click(function(){
$('.main-pic-01').toggleClass('main-pic li');
$('.main-pic-01').toggleClass('main-pic-toggle-leave');
});
Не знаю, что еще я могу сделать. Есть идеи?
вместо анимации, вы можете использовать 'transition'. Затем вы можете переключить некоторый класс на клик и указать состояние «после перехода» в этом классе. –
Что такое '' li'' в '.toggleClass ('main-pic li');'? – guest271314
Вы пытаетесь анимировать элемент по вертикали при щелчке? – guest271314