Анимация для onclick on submit button работает только в FF (не IE и не OP)
-
22-07-2019 - |
Вопрос
Кто-нибудь знает, почему следующий код действует только в FF?
$(document).ready(function() {
$('#powerSearchSubmitButton').click(function() {
startLoad();
});
});
function startLoad() {
$('.message').each(function(i) {
$(this).animate({ opacity: 0 }, 500);
});
};
Решение
***Обновление****
Пример здесь http://pastebin.me/4937b07714655 из 1 варианта, который заключается в том, чтобы вести подсчет сообщений и запускать обратный вызов анимации только для последнего сообщения.
почему бы вам не вернуть false из click или event.preventDefault() и в обратном вызове анимации не отправить форму
$(document).ready(function() {
$('#powerSearchSubmitButton').click(function(ev) {
startLoad();
ev.preventDefault();
});
});
function startLoad() {
var $messages=$('.message');
var count=$messages.length -1;
$messages.each(function(i) {
$(this).animate({ opacity: 0 }, 500, i == count ? submitForm:null);
});
};
function submitForm(){
$('#yourForm').submit();
}
Другие советы
Попробуйте добавить 'return false;' к вашей функции клика. Я установил демонстрацию на своем сайте и он отлично работает в IE6 и Opera.
Не связан с StackOverflow