(function() { var getScrollTop = function() { return document.body.scrollTop || document.documentElement.scrollTop; }; var getScrollLeft = function() { return document.body.scrollLeft || document.documentElement.scrollLeft; }; var startTime = new Date() - 0; var scrollInterval = setInterval(function() { var currTime = new Date() - startTime; if (currTime > 500) { clearInterval(scrollInterval); scrollTo(0, 0); } else { var x = getScrollLeft() * 3 / 4; var y = getScrollTop() * 3 / 4; scrollTo(x, y); } }, 30); })();なんでこんなコードを書いたかというと、AndroidのWebViewに滑らかにスクロールさせるメソッドが見つからなかったからです。scrollTo(int x, int y)だと一瞬でページのトップに来てしまいます。しかし、上のコードをJavaにそのまま移植すると、スレッドの関係で問題が生じる可能性がある気がします。そこらへんはまだ検証していません。
2012-02-24
JavaScriptでページのトップに滑らかにスクロールさせる
JavaScriptでページのトップにまでアニメーション付きで滑らかにスクロースするコードを書いてみました。特徴は、jQueryなどのライブラリを必要とせず、ほんの数行のプログラムだという点です。ちゃんとテストしていないから、動かないブラウザもあるかもしれません。
登録:
コメントの投稿 (Atom)
0 件のコメント:
コメントを投稿