body/htmlフレームを上/上に任意の量だけ移動してスクロールをシミュレートしたいと思います。私は、jQueryスクロールまたはアニメーション機能、.scroll()
と.animate()
を知っています。しかし、私は私の計画はただでスクロールをシミュレートするために、今ある javascriptを使って上のスクロールをシミュレートするsetInterval&clearInterval
.scroll
が呼び出されたときに、それは
animate
で
scrollTop
財産と
.scroll()
jQueryのネイティブ関数の間の紛争を引き起こしたので、それを使用しないことを決定しました可能な限り滑らかなbody/htmlフレームをできるだけ滑らかに動かしてから、ネイティブの
scroll
が発生すると(
.scroll()
が呼び出される)STOP(間隔をクリア)します。
私は.scroll()
が呼び出されたときにsetInterval
アニメーションを停止することができるが、私はまだ、私はそれが(部分的にしか動作します私のコードを意味する)「スクロール」したい量だけトップにHTMLオブジェクトを移動することはできませんよ。ここで
は、私がこれまで持っているものです。
var scrollTop = //Some arbitrary value
var fakeScroll = setInterval(function(){
console.log(scrollTop);
var animObj = $('html,body');
animObj.top = animObj.offset().top + scrollTop;
},500);
$(document).scroll(function(){
clearInterval(fakeScroll);
});
は、任意の提案/答えを感謝しています。ありがとう!
これは$(document).scrollイベントをトリガーします。そのため、一度だけ行います。 – Archer
これを実行しているときに$(document).scrollから終了するフラグを設定します。 –
window.scrollルートを終了する場合、window.scrollBy(x、y)は現在の位置を取得して計算するよりも良いでしょう。 – Archer