Анимация jquery отличается при использовании webkit - другие браузеры - PullRequest
0 голосов
/ 22 февраля 2012

У меня возникла небольшая проблема с сайтом, на котором в браузерах на основе webkit прекрасно работает переход с заставки, но при использовании Firefox или IE9 (к счастью, требования IE8 не требуются) он сначала выполняет переход цвета на фоне, а затем прокручивающая часть.

http://acad -emo.n8e.be и нажмите NL в логотипе.

$('#NL').click(function () {
  $('#menu').animate({opacity: 1},2000);                
  $('html').animate({backgroundColor: '#b8c48a'},2000);                
  ShowDiv('acad_emo');
});

В этой функции важными частями являются:

$.scrollTo($('#acad_emo'), scrollspeed, { offset: { top: TopPos, left: LPos} }, { easing: 'easeInOutCubic ' });
History.pushState({page:'acad_emo'}, "Acad-Emo", "#!page=acad_emo");

Я думал, что проблема может заключаться в том, что прокручиваемая часть была выполнена в отдельной функции, но после копирования соответствующего кода и замены вызова функции Showdiv () я все равно получаю тот же эффект, когда FF и IE выполняют прокрутку после цветного перехода.

Кто-нибудь, кто мог бы пролить свет на то, что здесь происходит не так?

1 Ответ

0 голосов
/ 22 февраля 2012

попробуйте изменить:

$.scrollTo($('#acad_emo'), scrollspeed, { offset: { top: TopPos, left: LPos} }, { easing: 'easeInOutCubic ' }); History.pushState({page:'acad_emo'}, "Acad-Emo", "#!page=acad_emo");

к этому:

$.scrollTo($('#acad_emo'), scrollspeed, { offset: { top: TopPos, left: LPos} }, { easing: 'easeInOutCubic ' }); History.pushState({page:'acad_emo'}, "Acad-Emo", "#!page=acad_emo").delay(2000);

Я не уверен, если вы знаете лучше, но я пытаюсь сделать так, чтобы задержать прокрутку, используя .delay (время), это должно помешать тому, чтобы он пришел рано, если я прав ...

...