很多網站都會采用瀑布式的加載模式,像qq空間加載好友動態,為了用戶體驗更好,很多網站會加上回到頂部的連接,但大多數網站都是一下子就回到了頂部,當然,這樣有這樣的好處,但是我是個比較喜歡很炫的東西的人,所以就比較喜歡滑動滾到頂上。直接上代碼吧。
1 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 2 <html> 3 <head> 4 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 5 <title>Insert title here</title> 6 <script type="text/javascript"> 7 function goTop(acceleration, time) { 8 acceleration = acceleration || 0.1; 9 time = time || 16; 10 11 var x1 = 0; 12 var y1 = 0; 13 var x2 = 0; 14 var y2 = 0; 15 var x3 = 0; 16 var y3 = 0; 17 18 if (document.documentElement) { 19 x1 = document.documentElement.scrollLeft || 0; 20 y1 = document.documentElement.scrollTop || 0; 21 } 22 if (document.body) { 23 x2 = document.body.scrollLeft || 0; 24 y2 = document.body.scrollTop || 0; 25 } 26 var x3 = window.scrollX || 0; 27 var y3 = window.scrollY || 0; 28 29 30 31 32 33 // 滾動條到頁面頂部的水平距離 34 var x = Math.max(x1, Math.max(x2, x3)); 35 // 滾動條到頁面頂部的垂直距離 36 var y = Math.max(y1, Math.max(y2, y3)); 37 38 // 滾動距離 = 目前距離 / 速度, 因為距離原來越小, 速度是大於 1 的數, 所以滾動距離會越來越小 39 var speed = 1 + acceleration; 40 window.scrollTo(Math.floor(x / speed), Math.floor(y / speed)); 41 42 // 如果距離不為零, 繼續調用迭代本函數 43 if(x > 0 || y > 0) { 44 var invokeFunction = "goTop(" + acceleration + ", " + time + ")"; 45 window.setTimeout(invokeFunction, time); 46 } 47 } 48 </script> 49 </head> 50 <body> 51 1adfsssssssssssssssssssssssssssssssssssssssssssssssssss<br /> 52 1<br /> 53 1<br />1<br /> 54 1<br />1<br />1<br />1<br /> 55 1<br />1<br />1<br />1<br /> 56 1<br />1<br />1<br />1<br /> 57 1<br />1<br />1<br />1<br /> 58 1<br />1<br />1<br />1<br /> 59 1<br />1<br />1<br />1<br /> 60 1<br />1<br />1<br />1<br /> 61 1<br />1<br />1<br />1<br /> 62 1<br />1<br />1<br />1<br /> 63 1<br />1<br />1<br />1<br /> 64 1<br />1<br />1<br />1<br /> 65 1<br />1<br />1<br />1<br /> 66 1<br />1<br />1<br />1<br /> 67 1<br />1<br />1<br />1<br /> 68 1<br />1<br />1<br />1<br /> 69 1<br />1<br />1<br />1<br /> 70 1<br />1<br />1<br />1<br /> 71 1<br />1<br />1<br />1<br /> 72 1<br />1<br />1<br />1<br /> 73 1<br />1<br />1<br />1<br /> 74 1<br />1<br />1<br />1<br /> 75 1<br />1<br /> 76 fdsfaddddddddddddddddddd 77 78 <a href="javascript:;" onclick="goTop();return false;">TOP</a> 79 </body> 80 </html>
應該很簡單吧,上面獲取滾動條的位置,各個內核的獲取方式不一樣,這里就整合了一下。希望對大家有幫助。
為什么要寫博客啊?因為失戀了 ,我好想她啊,只有讓自己忙起來才會緩和一下,失戀好難受啊,下次我一定要好好抓住,打死都不分手了。話說我是被甩的啊。哎。。。
