因爲是基於bootstrap基礎,因此樣式有些須要修改javascript
主要用到的樣式css
<style> body { padding-top: 100px; } .scrollTable, .fixTable{width:100%;max-width:none;} .nowrap tr th, .nowrap tr td{white-space:nowrap;} #outtableDiv { padding: 0; height: 400px; overflow-y: scroll; overflow-x: scroll; } .fixTable thead { background-color: #fff; } .fixTable{margin-bottom:0;position:absolute; background-color: #fff; } </style>
主要html結構 html
<div id="outtableDiv" class="col-xs-12" > <table id="fixTable" class="table table-bordered fixTable nowrap"> <thead> <tr> <th colspan="2">姓名姓名</th> <th>性別</th> <th colspan="2">身高</th> <th>姓名</th> <th>年齡</th> <th>性別</th> <th>身高</th> <th>體重</th> <th>姓名</th> <th>年齡</th> <th>性別</th> <th>身高</th> <th>體重</th> <th>姓名</th> <th>年齡</th> <th>性別</th> <th>身高</th> <th>體重</th> </tr> <tr> <th>姓名姓名</th> <th>年齡</th> <th>性別</th> <th>身高</th> <th>體重</th> <th>姓名</th> <th>年齡</th> <th>性別</th> <th>身高</th> <th>體重</th> <th>姓名</th> <th>年齡</th> <th>性別</th> <th>身高</th> <th>體重</th> <th>姓名</th> <th>年齡</th> <th>性別</th> <th>身高</th> <th>體重</th> </tr> </thead> </table> <table id="textTable" class="table table-bordered scrollTable nowrap"> <thead> <tr> <th>姓名姓名</th> <th>年齡</th> <th>性別</th> <th>身高</th> <th>體重</th> <th>姓名</th> <th>年齡</th> <th>性別</th> <th>身高</th> <th>體重</th> <th>姓名</th> <th>年齡</th> <th>性別</th> <th>身高</th> <th>體重</th> <th>姓名</th> <th>年齡</th> <th>性別</th> <th>身高</th> <th>體重</th> </tr> <tr> <th>姓名姓名</th> <th>年齡</th> <th>性別</th> <th>身高</th> <th>體重</th> <th>姓名</th> <th>年齡</th> <th>性別</th> <th>身高</th> <th>體重</th> <th>姓名</th> <th>年齡</th> <th>性別</th> <th>身高</th> <th>體重</th> <th>姓名</th> <th>年齡</th> <th>性別</th> <th>身高</th> <th>體重</th> </tr> </thead> <tbody id="testTbody"> </tbody> </table>
用到的js java
<script type="text/javascript"> $(document).ready(function () { function duiqi(){ var fixTh=$("#fixTable tr:last-child th"); var contentTh=$("#textTable tr:last-child th"); var contentTableWidth=$("#textTable").outerWidth(); $("#fixTable").outerWidth(contentTableWidth); for(i=0;i<contentTh.length;i++){ fixTh.eq(i).outerWidth(contentTh.eq(i).outerWidth()); } } $('#outtableDiv').scroll(function() { var scrollTop=$('#outtableDiv').scrollTop(); $("#fixTable").css("top",scrollTop); }) duiqi(); $(window).resize(function () { duiqi(); }); }) </script>
缺點是每次滾動都是不停的計算scrollTop的值,把他賦給固定頭的樣式bootstrap
$('#outtableDiv').scroll(function() {
var scrollTop=$('#outtableDiv').scrollTop();
$("#fixTable").css("top",scrollTop);
})ui