2

ページの垂直スクロールに応じて、<div>呼び出されたものをcontainer水平に移動します。

scrollElement.scroll(function() {
    var offsetLeft = scrollElement.scrollTop() / x;
    container.css({ left: offsetLeft  + 'px' });
});

これにより、ユーザーが垂直にスクロールしたときに、斜めのスクロール効果が正常に作成されます。

スクロールは Firefox ではほとんど許容できませんが、Google Chrome では非常に不安定です。スクロールが速すぎると、Chrome は x 軸と y 軸の動きを同期できず、最初に下にスクロールしてから x オフセットを調整しますただし、Firefox は、スクロールが速すぎると遅くなります。

この「斜めスクロール」を実装するより良い方法はありますか? もっと滑らかにすることは可能ですか?

私は基本的に、毎回x座標を修正せずにdivをスクロールしすぎないようにしたいと考えています。

4

1 に答える 1

0

コンテナー オフセットの 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' });
});
于 2013-05-10T06:36:50.130 に答える