Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/465.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用jQuery平滑跨浏览器对角滚动_Javascript_Jquery_Google Chrome_Firefox_Scroll - Fatal编程技术网

Javascript 使用jQuery平滑跨浏览器对角滚动

Javascript 使用jQuery平滑跨浏览器对角滚动,javascript,jquery,google-chrome,firefox,scroll,Javascript,Jquery,Google Chrome,Firefox,Scroll,根据页面的垂直滚动,我水平移动一个名为容器的: scrollElement.scroll(function() { var offsetLeft = scrollElement.scrollTop() / x; container.css({ left: offsetLeft + 'px' }); }); 当用户垂直滚动时,这将成功创建对角线滚动效果 这种滚动在Firefox中几乎是不可接受的,但在Google Chrome中却非常不稳定:当你滚动过快时,Chrome无法同步

根据页面的垂直滚动,我水平移动一个名为
容器的

scrollElement.scroll(function() {
    var offsetLeft = scrollElement.scrollTop() / x;
    container.css({ left: offsetLeft  + 'px' });
});
当用户垂直滚动时,这将成功创建对角线滚动效果

这种滚动在Firefox中几乎是不可接受的,但在Google Chrome中却非常不稳定:当你滚动过快时,Chrome无法同步x轴和y轴上的移动,因此先向下滚动,然后调整x轴偏移。 不过,当你滚动得太快时,Firefox就会滞后

有没有更好的方法来实现这种“对角滚动”? 有没有可能把它弄得更光滑


我基本上希望div不要在每次都不更正x坐标的情况下向下滚动太远。

您可以尝试将其作为动画,而不是直接为容器偏移设置CSS

scrollElement.scroll(function() {
  var offsetLeft = scrollElement.scrollTop() / x;

  container.stop(true, false); // Stop the current animation, likely
                               // caused by a previous scroll event fire.
  container.animate({ left: offsetLeft  + 'px' });
});

非常感谢。不幸的是,这加剧了先向下滚动然后向左滚动的效果。我正在寻找一种同步这些动作的方法。