jquery實現表頭鎖定

2021-06-18 12:40:01 字數 1892 閱讀 4198

前段時間做專案時候由於需要顯示乙個列表,但是由於資料太多在滾動的時候表頭必須凍結住,所以就寫了下面這個指令碼(曾經在網上也找過相應的指令碼,但是不怎麼理想所以就自己寫了,但是目前由於專案僅僅用到了表頭的凍結,而不需要指定列凍結所以目前只能算個不完整的指令碼,不過一般的僅僅需要表頭凍結就可以使用了),現在先看看截圖:

這樣實現了表頭的凍結,下面表體內容可以自由滾動

看下**:

//為jquery擴充套件乙個clonetableheader 方法

jquery.fn.clonetableheader = function(tableid, tableparentdivid)   

var browserversion = parsefloat(ver.substring(ver.indexof("msie") + 5, ver.lastindexof("windows")));

var content = document.getelementbyid(tableparentdivid);

var scrollwidth = content.offsetwidth - content.clientwidth;

var tableorg = jquery("#" + tableid);//獲取表內容

var table = tableorg.clone();//轉殖表內容

table.attr("id", "clonetable");

//注意:需要將要凍結的表頭放入thead中

var tableheader = jquery(tableorg).find("thead");

var tableheaderheight = tableheader.height();

tableheader.hide();

var colswidths = jquery(tableorg).find("tbody tr:first td").map(function() );//動態獲取每一列的寬度

var tableclonecols = jquery(table).find("thead tr:first td")

if (colswidths.size() > 0) else

} }

//建立凍結表頭的div容器,並設定屬性

var headerdiv = document.createelement("div");

jquery(headerdiv).css("height", tableheaderheight);

jquery(headerdiv).css("overflow", "hidden");

jquery(headerdiv).css("z-index", "20");

jquery(headerdiv).css("width", "100%");

jquery(headerdiv).attr("id", "tableheaderdiv" + tableid);

jquery(headerdiv).insertbefore(tableorg.parent());

}

以上就是完整**,現在看下如何使用:

只需在頁面中加入以下指令碼?

12

3

4

5

這樣就可以了,傳入表和表所在的div的id就ok了,必須注意的是:要凍結的表頭必須放入到thead中,否則無法實現凍結。

以上**在ie6,7,8測試通過,ff和chrome會出現表頭的寬度不準確的問題。

kyo-yo

出處:

css實現table鎖定表頭

在做專案中,碰到 資料全部載入,不要分頁,就需要鎖定表頭的業務。自己也上網搜了一些資料,1.css html實現 一般的思路就是兩個table拼接,不過問題是上下表單可能對不齊 2.js實現 一般的思路是重新建立表頭,表頭浮動 在這裡css html實現 css html實現固定表頭title ty...

鎖定表頭和表頭排序

效果圖如上,如下 content 是最終返回所有資料的陣列。sum salesamount sort 和 sum scount sort 是所有只有零售額和零售量的陣列。session cross border channel table2 content session cross border ...

PHPExcel凍結(鎖定)表頭的使用方法

phpexcel是一款功能比較強大的操作微軟excel的php外掛程式,在匯出資料時為了方便檢視,有時需要鎖定表頭,也就是在滾動檢視資料時,表頭始終出現在視野中,而不會消失。呼叫方法如下 objphpexcel new phpexcel objphpexcel setactivesheetindex...