Я работаю над простым игровым проектом и играю с jQuery для создания анимации.
По какой-то причине плавность и последовательность анимаций соотносятся с тем, насколько «активна» веб-страница.Если я удерживаю мышь на веб-странице в режиме ожидания, анимация прерывистая, не отвечает, а вторая анимация часто не воспроизводится.
Кроме того, если мышь на странице остается очень активной, анимация воспроизводится довольно
Вот небольшой видеоальбом с эффектом, который я вижу
https://imgur.com/a/K1bW308
Следующий код - это то, что я использую для анимации div:
window.setTimeout(function() {
$("#blue_button").animate({"margin-left" : "100px"}, 5000, 'easeOutElastic', function() {
// enable mouse events
$("#blue_button").css({"pointer-events" : "all"});
// bring in the text desription
var rect = $("#blue_button")[0].getBoundingClientRect();
$("#text_div").animate({"margin-left" : rect.right + 80 + "px"}, 700, 'easeOutQuint');
});
}, 6000);
Я использую jQuery 3.3.1 и jQuery Easing 1.3 (плагин с пользовательскими функциями замедления)
Я все еще вижу проблемы с воспроизведением при использовании jQuery замедления по умолчанию.
Я использую Chrome 69.0.3497.100 в Windows 10. Я вижу то же поведение при использовании ванильного Microsoft Edge.Также при использовании моего ноутбука с тем же Chrome / Windows.
Спасибо
Редактировать:
Я обошел это, используя расширение jquery для перехода.Работает довольно хорошо.
http://ricostacruz.com/jquery.transit/