Контроль webkit анимации через jQuery (вопрос)
Есть кнопка и объект. Стоит задача сделать так чтобы при подводе на кнопку объект начал двигаться благодаря webkit анимации и остановился в конце своего движения. После убирания мышки с кнопки, объект нужно вернуть в первоначальное состояние с той же анимацией, только в обратном порядке.
![]() Задача состоит именно в этом, я не могу использовать анимацию js. К тому же я не могу контролировать webkit анимацию на чистом css, так как у меня группа объектов которых нужно анимировать подводя мышку к определенным объектам, я просто упростил схему чтобы было проще. При подводе мышки я задаю класс с анимацией объекту:
@-webkit-keyframes floatCenter{
0%{
}
100%{
margin-top: -25px;
-webkit-transform:rotateZ(-5deg);
}
}
.box-inside-left-anim {
-webkit-animation-name: floatCenter;
-webkit-animation-duration: 0.3s;
-webkit-animation-timing-function: ease-out;
-webkit-animation-iteration-count: 1;
-webkit-animation-fill-mode: forwards;
}
При выводе мышки с кнопки я задаю объекту новый класс, в котором анимация крутится в обратном направлении:
@-webkit-keyframes floatCenterStop{
0%{
margin-top: -25px;
-webkit-transform:rotateZ(-5deg);
}
100%{
margin-top: 0px;
-webkit-transform:rotateZ(0deg);
}
}
.box-inside-left-stop {
-webkit-animation-name: floatCenterStop;
-webkit-animation-duration: 0.3s;
-webkit-animation-timing-function: ease-out;
-webkit-animation-iteration-count: 1;
-webkit-animation-fill-mode: forwards;
}
И тут я застреваю, так как класс у объекта теперь .box-inside-left-stop то при повторном подводе мышкой он уже не реагирует и не анимируется. Потому что изначально класс был .box-inside-right, после подвода стал .box-inside-right-amin, а после увода мышки стал .box-inside-right-stop. И я не понимаю как мне вернуть его в первоначальное состояние. Подскажите пожалуйста, задача не сложная, просто из-за моего небольшого опыта я не могу придумать верного подхода. Вот jQuery код:
<script type="text/javascript">
$(document).ready(function(){
$(".box-inside-main").mouseover(function(){
$(".box-inside-right").addClass("box-inside-right-anim");
});
$(".box-inside-main").mouseout(function(){
$(".box-inside-right-anim").addClass("box-inside-right-stop");
});
});
Спасибо. |
webkit анимация - это критично? можно попробовать реализовать это через спрайты... тогда эта анимация будет кроссбраузерной...
|
| Часовой пояс GMT +3, время: 15:55. |