雖然niceScroll插件很好用,畢竟它不依賴css,只是單純的js就能夠設置出好看的滾動條了。css
最近在項目中使用到niceScroll,並且在表格裏有橫滾動條,豎滾動條時很容易錯位,就是滾動條會懸浮在半空,並非在div的底部或右邊,打開f12可看到滾動條並非直接定位在div裏面,而是在整個body最後,和要使用定位的div同級,這而致使了這個bug,尤爲是在IE下更明顯,滾動條四處飛︿( ̄︶ ̄)︿。測試
在網上找了不少資料好像都沒有這個狀況,可能他們項目沒那麼多橫向滾動條吧。。。。。spa
要解決這個bug,當時想到的就是把滾動條設在div裏面,這樣就不會懸浮。通過屢次測試,後來發如今要設的div上去定位position:absolute,這樣滾動條就會嵌套在裏面,就不會出現亂懸浮錯位的狀況。插件
沒有定位時候,滾動條在body最後,如圖:it
定位後的滾動條在div裏面,如圖:io
我用的是wex5的grid表格,在grid那行添加類名gridPositon設爲絕對定位,而後在它父級那設爲相對定位,「子絕父相」。這樣操做完是解決了滾動條懸浮錯位的問題了,可是在IE下又出現新的bug,就是鼠標hover和grid
點擊選中時沒有顏色,(- -坑爹的ie),而後再套多兩層div,這樣就解決了ie下沒顏色的問題。因此最後的結構以下:bug
總結:只要在用到的div絕對定位,滾動條就嵌套在裏面。那個ie下沒顏色是由於直接在它父級相對定位了,因此後來我改爲在最外的window去相對定位了,這樣就不用那麼麻煩去修改它的結構。im