今天無聊,幫乙個網友解決乙個很無聊的問題,用js判斷頁面是否出現滾動條,在網上看了一些**,經過驗證並不起作用,下面是在網上搜尋到的**:
當可視區域小於頁面的實際高度時,判定為出現滾動條,即:
if (document.documentelement.clientheight < document.documentelement.offsetheight) scroll = true;要使用 document.documentelement ,必須在頁面頭部加入宣告:
其實,這段**是不起作用的,因為他沒考慮到乙個問題,就是瀏覽器的邊框,當我們在獲取頁面的offsetheight高度時是包括了瀏覽器的邊框的,瀏覽器的邊框是2個畫素,所以這時無論在任何情況下clientheight 始終是小於offsetheight的,這就使得即使沒有滾動條它也為true,因此我們要修正這個錯誤,**應該這樣改,在offsetheight上減去4個畫素,即:
if (document.documentelement.clientheight < document.documentelement.offsetheight-4){還有,這裡要搞清楚,上面這**是判斷橫向滾動條的,我們一般要判斷的是縱向滾動,**如下://執行相關指令碼。
if (document.documentelement.clientwidth < document.documentelement.offsetwidth-4){呵呵,問題搞定,其實我覺得這是個非常無聊的問題,我想沒幾個人想著去判斷滾動條的有無,沒有什麼實際意義,在這裡幫助一下那些需要這功能的朋友走出誤區,免得浪費大量時間去網上搜而無果。//執行相關指令碼。
JS判斷頁面是否出現滾動條
當可視區域小於頁面的實際高度時,判定為出現滾動條,即 if document.documentelement.clientheight document.documentelement.offsetheight scroll true 要使用 document.documentelement 必須在...
如何判斷頁面是否有滾動條?
橫向滾動條 當可視區域小於頁面的實際寬度時,判定為出現滾動條,即 if document.documentelement.clientwidth document.documentelement.offsetwidth 豎向滾動條 當可視區域小於頁面的實際高度時,判定為出現滾動條,即 if docu...
js判斷滾動條滾動方向
第一種寫法 var a function scroll fn window.addeventlistener scroll function false scroll function direction 第二種寫法 var a function scroll fn window.addeventl...