1. 程式人生 > >頁面回到頂部的三種實現(錨標記,js)

頁面回到頂部的三種實現(錨標記,js)

一、使用錨標記返回頁面頂部
使用HTML錨標記最簡單,就是看起來有點不好看,點選後會在位址列顯示這個錨標記,其它的倒沒什麼。
頁面頂部放置:
<a name="top" id="top"></a>
放置位置在<body>標籤之後隨便找個地方放都可以,只要靠近頂部即可。
頁面底部放置:
<a href="#top" target="_self">返回頂部</a>

二、使用Javascript Scroll函式返回頂部

scrooll函式用來控制滾動條的位置,有兩種很簡單的實現方式:
方式1:
<a href="javascript:scroll(0,0)">返回頂部</a>
scroll第一個引數是水平位置,第二個引數是垂直位置,比如要想定位在垂直50畫素處,改成scroll(0,50)就可以了。
方式2:
本方式是漸進式返回頂部,要好看一些,程式碼如下:

複製程式碼 程式碼如下:


function pageScroll() {
window.scrollBy(0,-10);
scrolldelay = setTimeout('pageScroll()',100);
}
<a href="pageScroll();">返回頂部</a>


這樣就會動態返回頂部,不過雖然返回到頂部但是程式碼仍在執行,還需要在pageScroll函式加一句給停止掉。

複製程式碼 程式碼如下:

if(document.documentElement.scrollTop==0) clearTimeout(scrolldelay);



三、使用Onload加上scroll功能實現動態返回頂部



1、首先在網頁BODY標籤結束之前加上:
<div id="gotop">返回頂部</div>
2、再呼叫以下JS指令碼部分(本指令碼非天緣原創,早前來源於Z-BLOG官方論壇上收集,源包未帶作者連結,如果原作者看到敬請留言新增):

複製程式碼 程式碼如下:


BackTop=function(btnId){
var btn=document.getElementById(btnId);
var d=document.documentElement;
window.onscroll=set;
btn.onclick=function (){
btn.style.display="none";
window.onscroll=null;
this.timer=setInterval(function(){
d.scrollTop-=Math.ceil(d.scrollTop*0.1);
if(d.scrollTop==0) clearInterval(btn.timer,window.onscroll=set);
},10);
};
function set(){btn.style.display=d.scrollTop?'block':"none"}
};
BackTop('gotop');


對Z-BLOG而言,可以放到$(document).ready(function(){....函式中,也可以獨立存成一個js檔案,比如gotop.js,再通過:
<SCRIPT src="/js/gotop.js" type=text/javascript></SCRIPT>
來呼叫,當然了位置最好放在"返回頂部"標籤的下面,該呼叫方法已假設路徑為JS,其它位置請自行修改。
補充:
上述返回頂部程式碼都是文字式樣的,也可以把文字更換為漂亮一點的圖示,另外還有懸浮狀的返回頂部程式碼(就是頁面滾動時,返回頂部圖示也會跟著跑的那種),需要使用到層等,搞的有點複雜了,本文暫不列出。