js博客內(nèi)容進(jìn)度插件詳解-創(chuàng)新互聯(lián)

前面的話

10多年的北辰網(wǎng)站建設(shè)經(jīng)驗(yàn),針對(duì)設(shè)計(jì)、前端、開(kāi)發(fā)、售后、文案、推廣等六對(duì)一服務(wù),響應(yīng)快,48小時(shí)及時(shí)工作處理。營(yíng)銷(xiāo)型網(wǎng)站建設(shè)的優(yōu)勢(shì)是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動(dòng)調(diào)整北辰建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無(wú)論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計(jì),從而大程度地提升瀏覽體驗(yàn)。創(chuàng)新互聯(lián)從事“北辰網(wǎng)站設(shè)計(jì)”,“北辰網(wǎng)站推廣”以來(lái),每個(gè)客戶項(xiàng)目都認(rèn)真落實(shí)執(zhí)行。

最近在復(fù)習(xí)自己寫(xiě)的博客,但有的博客內(nèi)容很長(zhǎng),長(zhǎng)到不知道多少時(shí)間可以讀完。這時(shí),就有種泄氣的沖動(dòng)。但,如果能夠提供一個(gè)博客內(nèi)容進(jìn)度的插件,根據(jù)所讀內(nèi)容的多少,顯示進(jìn)度條,讓自己對(duì)所讀的內(nèi)容進(jìn)度心里有數(shù),可以讓自己平靜下來(lái),一點(diǎn)一點(diǎn)讀下去。本文將詳細(xì)介紹博客內(nèi)容進(jìn)度插件的實(shí)現(xiàn)

效果演示

無(wú)論是通過(guò)鼠標(biāo)滾輪,還是拖動(dòng)滾動(dòng)條,也或者是按空格鍵,只要發(fā)生了頁(yè)面的滾動(dòng)操作,就會(huì)觸發(fā)頁(yè)面底部博客內(nèi)容進(jìn)度條的變化。根據(jù)當(dāng)前內(nèi)容的多少計(jì)算與博客所有內(nèi)容的比例,最終對(duì)應(yīng)成進(jìn)度條的寬度。當(dāng)鼠標(biāo)移入進(jìn)度條范圍時(shí),會(huì)以數(shù)字顯示出當(dāng)前的進(jìn)度百分比

通過(guò)使用如下代碼,可將進(jìn)度插件插入頁(yè)面中

<script src="http://files.cnblogs.com/files/xiaohuochai/progress.js"></script>

由于目錄和進(jìn)度都是常用的功能,所以,我把進(jìn)度的功能整合到目錄生成的插件中了

<script src="http://files.cnblogs.com/files/xiaohuochai/catalog.js"></script>

原理解釋

上面已經(jīng)簡(jiǎn)明扼要的說(shuō)明了進(jìn)度條的原理,而實(shí)現(xiàn)起來(lái)也不困難。在觸發(fā)滾動(dòng)事件時(shí),計(jì)算兩個(gè)高度值。一個(gè)值H用來(lái)表示整篇博客內(nèi)容的底部離頁(yè)面頂端的距離。一個(gè)值h用來(lái)表示當(dāng)前窗口內(nèi)博客內(nèi)容的底部離頁(yè)面頂端的距離。從而比例值radio = h/H,就是進(jìn)度百分比,以進(jìn)度條的寬度變化顯示出來(lái)

具體實(shí)現(xiàn)

【1】獲取博客內(nèi)容總高度H,如下圖所知,博客園將博客內(nèi)容放在id為cnblogs_post_body的div內(nèi),通過(guò)scrollHeight來(lái)獲取其高度即可。且該值是固定不變的,不需在發(fā)生滾動(dòng)事件時(shí)再獲取,頁(yè)面加載完成后就可獲取

js 博客內(nèi)容進(jìn)度插件詳解

js 博客內(nèi)容進(jìn)度插件詳解

function addEvent(target,type,handler){
 if(target.addEventListener){
 target.addEventListener(type,handler,false);
 }else{
 target.attachEvent('on'+type,function(event){
  return handler.call(target,event);
 });
 }
}
var H;
addEvent(window,'load',function(){
 H = cnblogs_post_body.scrollHeight;
});

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)建站muchs.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專(zhuān)為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。

新聞名稱:js博客內(nèi)容進(jìn)度插件詳解-創(chuàng)新互聯(lián)
本文URL:http://muchs.cn/article8/dspgip.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站制作、自適應(yīng)網(wǎng)站域名注冊(cè)、網(wǎng)站改版、外貿(mào)建站、響應(yīng)式網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都seo排名網(wǎng)站優(yōu)化