fixSidebar側(cè)邊欄固定小組件
fixSidebar是一個側(cè)邊欄固定小組件,主要是用于主內(nèi)容較長時讓側(cè)邊欄能保持顯示,依賴于jQuery。
示例地址 http://www.jx3pve.com/macro
整個寫作的原因是看到遠(yuǎn)人在慕課的一篇課程想來寫的,不過做了功能細(xì)化。
使用方法
fixSidebar(selector,top,bottom,triggerScroll)
比如
fixSidebar('sidebar',30,80,100)
參數(shù)說明
selector是選擇器,會被傳入到j(luò)Query中,如果沒有則退出函數(shù),故如果懶人的話直接加載在全局JS文件中即可。
top為傳入的距頂位置,這個的作用是,如果存在fix的panel導(dǎo)航或用戶條時,不傳值的話則為0。
bottom為傳入的距底位置,這個作用是距底位置,如果你還有全局的底部導(dǎo)航等時,應(yīng)該設(shè)置此值,可以稍微比底欄高度再大一點點保留間距感,不傳值的話則為0。
triggerScroll則是在v0.3的時候新加的,當(dāng)時由于自己私人項目中的這個頁面還有頭部橫幅,于是如果必要的話,你還可以設(shè)置,觸發(fā)fix時的值,比如這個頁面則在250以后開始觸發(fā)。
內(nèi)置自動判定了默認(rèn)在頁面中的實際水平坐標(biāo)。當(dāng)側(cè)邊欄長度小于頁面長度時默認(rèn)依據(jù)頂部來計算位置,當(dāng)側(cè)邊欄長度大于頁面時才依舊底部來計算位置。
在最近副本欄目的應(yīng)用中,由于幻燈滾動的存在,我發(fā)現(xiàn)會出現(xiàn)一點滾動異常,思忖良久,發(fā)覺是受幻燈overflow的BFC管理而導(dǎo)致的,最終的解決方法是給傳入的selector設(shè)置overflow:hidden,必須由它自己管理約束自己。此項已自動在v0.4中加入在函數(shù)中了,無需再額外css設(shè)置。
