Анимации Jquery медленные в Google Chrome - PullRequest
2 голосов
/ 15 октября 2010

Я не уверен, что этот вопрос действительно специфичен для SO, но я все еще хотел бы спросить.

Кто-нибудь заметил, что анимации jquery стали менее плавными в Chrome, если вы просто найдете плагин jquery, кажется,очень хорошо, но обычно на демо-страницах есть небольшое количество тегов и других функций javascript.В настоящее время я работаю над проектом с богатым интерактивным интерфейсом, использующим множество функций fadeIn () и fadeOut () (принимая 300 в качестве аргумента).В то время как в IE9, Opera и FF4 они работают очень гладко, Chrome не может их правильно отобразить.

Например, Chrome отображает очень «негладко» такую ​​простую задачу, как отображение 400x100px div с фиксированной позицией с использованием функции fadeIn (300).

это только моя проблема, или у васзаметил что-то подобное в последнее время?Я пробовал стабильные и dev-релизы, но безуспешно, и, как я уже говорил, все другие браузеры могут обрабатывать плавные анимации.

Обновление: это пример:

$('#ms_cal_menu').click(function() {
    var offset = $(this).offset();
    $('#cal_submenu').css("top", offset.top+'px').css('left', offset.left-5+'px').fadeIn(300);        
});

1 Ответ

0 голосов
/ 10 мая 2011

Я думаю, что вы создаете условия гонки.Если вы используете подменю и щелкаете отсюда туда, каждый раз, когда вы запускаете процесс - и каждый процесс должен иметь время для завершения.

Что происходит, когда вы хотите перейти к другому пункту меню?Это мышка, которая начинает исчезать?Что произойдет, если ваше появление не завершено?

Я знаю, вы говорите, что "это работает" в других браузерах, но я уверен, что я смогу заставить его упасть через несколько секунд.Вам нужно контролировать поведение, которое может привести к гоночным условиям, но помимо этого это будет довольно раздражать ваших пользователей через некоторое время, если каждый выбор меню вызывает яркую анимацию.Это "красиво" при первом просмотре - но болезненно при повседневном использовании.

Разве вы не можете просто использовать .show() и .hide()?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...