點擊返回頂部,三種方法函數
一、這個方法jQuery使用正常,zepto使用沒有動畫動畫
//zepto沒有動畫 $("body").animate({scrollTop: 0}, 500) //zepto使用 $("body").scrollTop(0);
二、這個方法jQuery使用正常,zepto使用沒有動畫spa
window.scrollTo(0,0);
三、zepto使用能夠有動畫code
function goTop(acceleration, time) { acceleration = acceleration || 0.1; time = time || 16; var x1 = 0; var y1 = 0; var x2 = 0; var y2 = 0; var x3 = 0; var y3 = 0; if (document.documentElement) { x1 = document.documentElement.scrollLeft || 0; y1 = document.documentElement.scrollTop || 0; } if (document.body) { x2 = document.body.scrollLeft || 0; y2 = document.body.scrollTop || 0; } var x3 = window.scrollX || 0; var y3 = window.scrollY || 0; // 滾動條到頁面頂部的水平距離 var x = Math.max(x1, Math.max(x2, x3)); // 滾動條到頁面頂部的垂直距離 var y = Math.max(y1, Math.max(y2, y3)); // 滾動距離 = 目前距離 / 速度, 由於距離原來越小, 速度是大於 1 的數, 因此滾動距離會愈來愈小 var speed = 1 + acceleration; window.scrollTo(Math.floor(x / speed), Math.floor(y / speed)); // 若是距離不爲零, 繼續調用迭代本函數 if (x > 0 || y > 0) { var invokeFunction = "goTop(" + acceleration + ", " + time + ")"; window.setTimeout(invokeFunction, time); } } $(".fix_go_top").on("click", function() { //$("body").scrollTop(0); //window.scrollTo(0,0); goTop(); });