jquery动画在使用webkit时有所不同 - 其他浏览器

时间:2012-02-22 16:50:41

标签: jquery jquery-animate

我在一个基于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 :(得分:0)

尝试改变:

$.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(时间),这应该阻止它进入早期,如果我是对的...