• <fieldset id="8imwq"><menu id="8imwq"></menu></fieldset>
  • <bdo id="8imwq"><input id="8imwq"></input></bdo>
    最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
    問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
    當前位置: 首頁 - 科技 - 知識百科 - 正文

    一個用jquery寫的判斷div滾動條到底部的方法【推薦】_jquery

    來源:懂視網 責編:小采 時間:2020-11-27 21:49:49
    文檔

    一個用jquery寫的判斷div滾動條到底部的方法【推薦】_jquery

    一個用jquery寫的判斷div滾動條到底部的方法【推薦】_jquery:jQuery 里和滾動條有關的概念很多,但是有三個屬性和滾動條的拖動有關,就是:scrollTop、scrollLeft、scrollHeight。其中 scrollHeight 屬性,互聯網上幾乎搜素不到關于它的應用技巧,而我正好需要用到它。我們現在只探討和垂直滾動有關的 scrollTo
    推薦度:
    導讀一個用jquery寫的判斷div滾動條到底部的方法【推薦】_jquery:jQuery 里和滾動條有關的概念很多,但是有三個屬性和滾動條的拖動有關,就是:scrollTop、scrollLeft、scrollHeight。其中 scrollHeight 屬性,互聯網上幾乎搜素不到關于它的應用技巧,而我正好需要用到它。我們現在只探討和垂直滾動有關的 scrollTo
    jQuery 里和滾動條有關的概念很多,但是有三個屬性和滾動條的拖動有關,就是:scrollTop、scrollLeft、scrollHeight。其中 scrollHeight 屬性,互聯網上幾乎搜素不到關于它的應用技巧,而我正好需要用到它。

    我們現在只探討和垂直滾動有關的 scrollTop、scrollHeight 屬性。

    一、滾動條有關屬性的正確理解:

    假設有以下Html代碼:

    <div id="div1" style="overflow-y:auto; overflow-x:hidden; height:500px;">
     <div style="height:750px;">
     </div>
    </div>

    由于內部的p標簽高度比外部的長,并且外部的p允許自動出現垂直滾動條,所以用瀏覽器打開后,可以看到垂直滾動條。滾動條向下拖動一段距離,看到的頁面效果如下(右部的a、b是我抓圖后,用PS標出來的):

    1125.jpg

    那么,這里的外部p 的scrollTop、scrollHeight 屬性到底是什么呢?

    有人說,scrollTop等于圖中標出的a。scrollHeight 等于外部p的高度500px。其實,都不對。

    其實,圖中標出的a、b,對我們編程寫js代碼沒有任何具體意義,它僅僅具有象征意義。

    實際上,在js代碼里,滾動條是被抽象為一個“點”來對待的。scrollHeight其實不是“滾動條的高度”(b),而是表示滾動條需要滾動的高度,即內部p的高度750px。而scrollTop表示滾動條(一個點)當前的位置在750px里占了多少,不是圖中標出的a。

    這時,我們很嘆服Windows的設計者,滾動條設計的如此形象美妙,欺騙了多少頭腦簡單的鼠標操作員。a和b的距離分別標識滾動條滾動了和需要滾動的距離,它們之間分別有一個對應的關系,但這些不是我們這些開發應用程序的程序員考慮的,是設計操作系統GUI圖形接口的程序員考慮的。

    2判斷垂直滾動條是否到達底部

    廓清了以上的概念,編碼其實就比較簡單了, 以下是示例代碼:

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
     <html xmlns="http://www.w3.org/1999/xhtml">
     <head>
     <meta http-equiv="content-type" content="text/html;charset=utf-8">
     <title>下拉滾動條滾到底部了嗎?</title>
     <script language="JavaScript" src="jQuery-1.4.2.min.js" mce_src="jquery-1.4.2.min.js"></script>
     <script language="javascript">
     $(document).ready(function (){
     var nScrollHight = 0; //滾動距離總長(注意不是滾動條的長度)
     var nScrollTop = 0; //滾動到的當前位置
     var nDivHight = $("#div1").height();
     
     $("#div1").scroll(function(){
     nScrollHight = $(this)[0].scrollHeight;
     nScrollTop = $(this)[0].scrollTop;
     if(nScrollTop + nDivHight >= nScrollHight)
     alert("滾動條到底部了");
     });
     });
     </script>
     <body>
     <div id="div1" style="overflow-y:auto; overflow-x:hidden; height:500px;">
     <div style="background-color:#ccc; height:750px;">IE 和 FF 下測試通過</div>
     </div>
     </body>
     </html>

    代碼解說:

    內部div高度為750,外部div高度為500,所以垂直滾動條需要滾動750-500=250的距離,就會到達底部,參見語句nScrollTop + nDivHight >= nScrollHight。

    程序中,在外部div的scroll(滾動)事件中偵測和執行if判斷語句,是非常消耗CPU資源的。用鼠標拖拉滾動條,只要有一個像素的變動就會觸發該事件。但點擊滾動條兩頭的箭頭,事件觸發的頻率會低得多。所以滾動條的scroll事件要謹慎使用。

    本示例判斷的是沒有水平滾動條的情況,在有水平滾動條時,情況會有細小的變化,所以nScrollTop + nDivHight >= nScrollHight語句中,需要用“>=”比較運算符,而沒有水平滾動條的時候,等號“=”就足夠了。大家可以實際測試一下。還可以判斷水平滾動條是否滾動到頭了。

    聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

    文檔

    一個用jquery寫的判斷div滾動條到底部的方法【推薦】_jquery

    一個用jquery寫的判斷div滾動條到底部的方法【推薦】_jquery:jQuery 里和滾動條有關的概念很多,但是有三個屬性和滾動條的拖動有關,就是:scrollTop、scrollLeft、scrollHeight。其中 scrollHeight 屬性,互聯網上幾乎搜素不到關于它的應用技巧,而我正好需要用到它。我們現在只探討和垂直滾動有關的 scrollTo
    推薦度:
    • 熱門焦點

    最新推薦

    猜你喜歡

    熱門推薦

    專題
    Top
    主站蜘蛛池模板: 久久精品国产第一区二区三区 | 国产成人综合久久精品尤物| 亚洲精品国产品国语在线| 日本精品一区二区三区在线观看| 正在播放国产精品每日更新 | 国产成人高清精品免费观看| 国产精品无码日韩欧| 亚洲精品你懂的在线观看| 四虎国产精品成人免费久久| 国产精品视频不卡| 久久久久夜夜夜精品国产| 国产精品兄妹在线观看麻豆| 日韩精品专区在线影院重磅| 无码国内精品久久人妻麻豆按摩 | 欧美激情精品久久久久久| 2021国产成人精品久久| 国产精品久久久久久搜索| 99热亚洲色精品国产88| 久久精品国产亚洲AV高清热| 一本色道久久88精品综合| 无码精品第一页| 亚洲精品和日本精品| 亚洲精品视频免费观看| 无码人妻精品一区二区蜜桃百度 | 青青热久久国产久精品| 国内精品久久久久久久影视麻豆 | 久久亚洲精品成人av无码网站| 亚洲精品动漫免费二区| 亚洲国产精品无码久久久久久曰 | 人妻少妇精品系列| 久久国产午夜精品一区二区三区| 国产一区二区三区欧美精品| 国产香蕉国产精品偷在线| 青青青国产依人精品视频| 国产探花在线精品一区二区| 精品无码一区二区三区亚洲桃色| 亚洲av成人无码久久精品| 亚洲精品成人片在线播放| 中文字幕在线精品视频入口一区| 一级A毛片免费观看久久精品| 最新在线精品国自av|