4

Jquery.ScrollTo プラグインの $.Localscroll 子を使用する水平サイト (対角線などの他の自動スクロール サイトでもかまいません) を作成しています。

このプラグインには大きな問題が 1 つあります。期間に基づいて動きを計算します。これは、ページ 1 から 2 への遷移に 2 秒かかることを意味しますが、ページ 1 から 10 への遷移にも 2 秒かかるため、遷移自体が非常に高速になり、遷移自体が実際には見えなくなります。リンクがいくつあるかはわかりません。リンクは同じメニューにはなく、ページ全体に散らばっています。

現在の scrollto の位置を確認し (できればプラグインを介してクロス ブラウザーで)、ハッシュ (#) を使用して新しい scrollto の値を確認し、速度に基づいて期間を計算する方法はありますか?

4

2 に答える 2

1

で scrollTop 値を取得できます$("element").scrollTop()。計算を行い、それに基づいて時間の長さを設定できます。

于 2010-07-15T06:27:50.880 に答える
0

期間中に移動するピクセル数を指定できます。この場合、50px/10msです。

例えば。:

var scrollOffset = root.scrollTop,
    offset       = element.offsetTop,
    speed        = 50;

function scrollLoop() {

  if (offset >= scrollOffset) {
  return;
  }

  scrollOffset -= speed;

  root.animate({ scrollTop: scrollOffset }, 10, function() {
    scrollLoop();
  });
}
于 2012-01-04T16:58:30.860 に答える