1. 程式人生 > 其它 >解決判斷滾動條觸底時由於scrollTop是小數造成的問題

解決判斷滾動條觸底時由於scrollTop是小數造成的問題

技術標籤:JavaScriptCSSVue

專案需求如上圖所示,隨著滾動條滑動,錨點改變自己對應的啟用狀態,當滾動條觸底的時候,啟用狀態為最後一個。

一開始根據常規的做法程式碼如下:

   //判斷滾動條觸底的情況
    if (scrollTop + clientHeight  = scrollHeight) {
      // todo
      return;
    }

始終沒法判斷觸底,除錯得知chrome瀏覽器下scrollTop是小數,而clientHeight和scrollHeight始終是整數這是bug出現的根本原因。

解決方法:"加1解決法"

程式碼如下:

  //判斷滾動條觸底的情況
    if (scrollTop + clientHeight + 1 >= scrollHeight) {
      //todo
      return;
    }

== 遇到scrollTop的問題其實都可以多一層思考,是否需要+1來相容瀏覽器,解決bug。

至此,問題解決。