91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

JS怎么實現table表格固定表頭且表頭隨橫向滾動而滾動

發布時間:2021-04-21 11:12:31 來源:億速云 閱讀:941 作者:小新 欄目:web開發

這篇文章將為大家詳細講解有關JS怎么實現table表格固定表頭且表頭隨橫向滾動而滾動,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

JS是什么

JS是JavaScript的簡稱,它是一種直譯式的腳本語言,其解釋器被稱為JavaScript引擎,是瀏覽器的一部分,主要用于web的開發,可以給網站添加各種各樣的動態效果,讓網頁更加美觀。

先看一張效果圖

JS怎么實現table表格固定表頭且表頭隨橫向滾動而滾動

思路:

1、頭部用一個table并用一個div包裹著, 表格的具體內容用一個table

2、頭部外面的div用positon: relative相對定位

3、獲取整個表格的高度

4、獲取表格的dom(或者包裹著表格的dom)距離頁面頂部的距離 offsetTop

5、滾動的零界點的距離 表格的高度+表格距離頁面頂部的距離 如果滾動超過這個 就讓頭部的top值歸0或原封不動

JS怎么實現table表格固定表頭且表頭隨橫向滾動而滾動

當然還有很多可以優化的地方 我只是展示一個小思路 嘿嘿嘿

題外話 為啥用紅色表頭 因為顯眼哇 哈哈

JS代碼

/**
     * 最重要的一點是頭和身體是兩個table 然后定位用relative 然后通過滾動來計算
     * */
      function FixedHead (){
        if( !(this instanceof FixedHead) ){
          return new FixedHead()
        };
        this.$dom = $('.dataTables_scrollHead'); // 表頭外層dom
        this.offsetTop = this.$dom.offset().top; // 表頭外層dom距離頂部的高度
        this.parents = this.$dom.parents('.dataTables_scroll'); // 表頭外層dom最外面的盒子(包裹著table的盒子)
        this.outBoxHeight = this.parents.height(); // 表頭外層dom最外面的盒子(包裹著table的盒子)的高度
        this.maxHeight = this.offsetTop + this.outBoxHeight; // 滾動的零界點 最多能滾動到哪里
        this.scroll();
      }
      FixedHead.prototype = {
        constructor: FixedHead,
        scroll: function(){
          var that = this;
          $(window).scroll(function(){
            var scrollTop = $(this).scrollTop();
            if((scrollTop > that.offsetTop) && (scrollTop < that.maxHeight)){
              that.$dom.css('top', (scrollTop - that.offsetTop + 50)+'px') // 這個50是因為我的頭部導航固定在頂部 高是50 所以要加上
            }else {
              var topCss = that.$dom.css('top');
              if(topCss === '0px' || topCss === 'auto'){
              }else {
                that.$dom.css('top', '0px')
              }
            }
          })
        }
      }

關于“JS怎么實現table表格固定表頭且表頭隨橫向滾動而滾動”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

四川省| 大埔区| 墨玉县| 岱山县| 博罗县| 芷江| 白沙| 奇台县| 丹寨县| 资兴市| 远安县| 襄垣县| 哈密市| 松滋市| 稷山县| 湘潭县| 陇南市| 沂水县| 沾益县| 临朐县| 芮城县| 彭泽县| 楚雄市| 乌苏市| 铁岭县| 广饶县| 凤山县| 波密县| 墨脱县| 阆中市| 峨边| 三原县| 陈巴尔虎旗| 庆云县| 霍山县| 定南县| 抚宁县| 疏附县| 仙桃市| 滨海县| 新和县|