Почему 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, время: 08:03. |