scrollTop
.animate
CSS トランジションを使用するため、Zepto の方法を使用してアニメーション化することはできません。
次のようなものを試してください: http://jsfiddle.net/DVDLM/5/
function scroll(scrollTo, time) {
var scrollFrom = parseInt(document.body.scrollTop),
i = 0,
runEvery = 5; // run every 5ms
scrollTo = parseInt(scrollTo);
time /= runEvery;
var interval = setInterval(function () {
i++;
document.body.scrollTop = (scrollTo - scrollFrom) / time * i + scrollFrom;
if (i >= time) {
clearInterval(interval);
}
}, runEvery);
}
$('#trigger').click(function () {
scroll('600px', 500);
});
編集:runEvery
間隔を実行する頻度を指定する変数を追加しました。これが低いほど、アニメーションはスムーズになりますが、パフォーマンスに影響を与える可能性があります。
EDIT2:質問を読み間違えたと思います。新しい質問への答えは次のとおりです。
$.zepto.scrollTop = function (pixels) {
this[0].scrollTop = pixels;
};