Почему callback у animate запускается 2 раза?
Только заметил что функция обратного вызова у animate запускается два раза. Вот пример:
$("body").click(function(){
$(".popup_static, .sale").animate({opacity:1},300,function(){alert()});
})
Алерт вылетает 2 раза. Почему так? Как сделать чтобы один раз? |
Untropee,
два элемента == два callback |
Да, спасибо, только что нашёл ответ в буржунете)
|
animate окончание очереди два варианта
Untropee,
запуск алерта по окончании всех анимаций на данных элементах
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>animated demo</title>
<style>
div {
background: yellow;
border: 1px solid #AAA;
width: 80px;
height: 80px;
margin: 0 5px;
float: left;
opacity: 0;
}
</style>
<script src="https://code.jquery.com/jquery-1.10.2.js"></script>
</head>
<body>
<button id="run">Run</button>
<div class="popup_static"></div>
<div class="sale"></div>
<script>
var d = $(".popup_static, .sale");
$("body").click(function(){
d.css({opacity:0}).animate({opacity:1},2000,function(){!d.queue( "fx" ).length && alert('test')});
})
d.animate({opacity: 1}, 2000).promise().done(function() {
alert('test');
});
</script>
</body>
</html>
|
d.animate({opacity: 1}, 300).promise().done(function() {
alert('test');
});
|
yazonnile,
:) ок |
Упс. Вы раньше написали? О_о
Я не копировал) Мистика |
yazonnile,
я добавил ваш вариант в свой код для примера, хотя на удивление похоже, как я пишу :lol: |
| Часовой пояс GMT +3, время: 09:00. |