欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

js 原生判斷內(nèi)容區(qū)域是否滾動到底部的實例代碼

 更新時間:2017年11月15日 09:13:31   作者:jayhkw  
下面筆者就為大家分享一篇js 原生判斷內(nèi)容區(qū)域是否滾動到底部的實例代碼,具有很好的參考價值,希望對大家有所幫助

邏輯

判斷內(nèi)容滾動到底需要知道的信息

內(nèi)容區(qū)域的真實高度(也就是滾動區(qū)域)

滾動條距離頂部的位置

內(nèi)容區(qū)域的可見高度

分別對應(yīng)下面的三個API。

element.scrollHeight 獲取元素內(nèi)容高度,,,【只讀屬性】

element.scrollTop 可以獲取或者設(shè)置元素的偏移值,常用于,計算滾動條的位置,當(dāng)一個元素的容器沒有產(chǎn)生垂直方向的滾動條,那它的 scrollTop 的值默認(rèn)為0.

element.clientHeight 讀取元素的可見高度【只讀屬性】

下面直接引用MDN上面的一個經(jīng)典的公式

判定元素是否滾動到底

如果元素滾動到底,下面等式返回true,沒有則返回false.

element.scrollHeight - element.scrollTop === element.clientHeight

案例-用戶使用協(xié)議

只有等用戶閱讀完協(xié)議才可以點擊同意,也就是說滾動條到底部之后代表完成閱讀

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>tab</title>
  <style>
    textarea{height: 200px;width: 300px}
  </style>
</head>
<body>

<p>
  <textarea>
    用戶咨詢條款
    一、咨詢系統(tǒng)提供的服務(wù)

1、本網(wǎng)站咨詢系統(tǒng)(以下簡稱“本系統(tǒng)”)為用戶提供參與各種咨詢項目(以下簡稱“項目”)的機會。用戶在包之網(wǎng)上注冊成為會員,并可申請某一專家會員通過包之網(wǎng)平臺及電話等方式為其提供咨詢服務(wù)。

2、您應(yīng)按照您想要咨詢的專家其所對應(yīng)的專家收費金額,根據(jù)您希望互動/通話時間的長短,預(yù)先存入咨詢費用,方可進行預(yù)約、咨詢。咨詢完成后,剩余的款項將在15個工作日內(nèi)直接退還給您。您應(yīng)提供詳細的收款信息,否則本網(wǎng)站不承擔(dān)任何責(zé)任。提請您注意,若預(yù)存金額過低,可能導(dǎo)致咨詢中斷。咨詢費用根據(jù)本網(wǎng)站標(biāo)準(zhǔn)的專家收費金額及實際通話時間進行計算。您同意因銀行處理本網(wǎng)站對您的每一筆付款所產(chǎn)生的全部費用將由您自行承擔(dān)。

3、如果您對專家的工作內(nèi)容或提供咨詢服務(wù)質(zhì)量等有異議,則在此等爭議完全解決之前,本網(wǎng)站將扣留應(yīng)付給您的款項。

4、如果您需要發(fā)票,應(yīng)直接向提供咨詢的專家要求,本網(wǎng)站不提供任何發(fā)票。

5、專家收費詳見本網(wǎng)站不時發(fā)布的專家收費金額。專家收費金額及其修改均為本條款不可分割的組成部分,請您申請前仔細查看。

6、本網(wǎng)站根據(jù)實際情況盡可能根據(jù)您的要求、申請與專家進行匹配, 但專家有權(quán)不予提供服務(wù)。

  </textarea>
</p>
<p>
  <input type="checkbox" value="1" disabled="disabled"> 同意
</p>
<script>
  //獲取checkbox元素
  var checkbox=document.querySelector('input[type=checkbox]');

  document.querySelector('textarea').addEventListener('scroll',function () {

    //讀取內(nèi)容區(qū)域的真實高度(滾動條高)
//    console.log(this.scrollHeight);

    //讀取滾動條的位置
//    console.log(this.scrollTop);

    //設(shè)置滾動到的位置
//      this.scrollTop=800;

    //讀取元素的高度
//    console.log(this.clientHeight)

    //意思就是內(nèi)容總體的高度 - 滾動條的偏移值 === 元素的高度(包含內(nèi)邊)但不包含外邊距,邊框,以及滾動條
    if(this.scrollHeight-this.scrollTop===this.clientHeight){
      console.log("到達底部");
      //移除disabled屬性
      checkbox.removeAttribute('disabled')
    }

  })


</script>
</body>
</html>

好吧,今天突然 看到mdn上面的這個API。腦補了一下
Element.scrollTop

以上這篇js 原生判斷內(nèi)容區(qū)域是否滾動到底部的實例代碼就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論