网上找了好多现成的。结果没一个能成。只得自己动手。

(function($){
$.fn.fixHeader = {
init : function(obj){
var p = obj.parent();
//绑定事件
p.scroll(internalScroll); //获取表格第一行
var head = obj.children("thead tr th:first");
if (!head || head.length == 0) {
var body = obj.children("tbody")[0];
head = $(body.children[0].children[0]);
} var headHeight = head.height(); //创建新层
var headDiv = $("<div></div>").appendTo(p);
headDiv.css({
"width": p[0].scrollWidth,
"position":"absolute",
"top": p.offset().top,
"display" : "none",
"background-color":"#f5f5f5",
"height": headHeight
}); //克隆第一行
var table = $("<table id='tblFixHeader'></table>").appendTo(headDiv);
$(obj[0].attributes).each(function () {
if (this.name == "id" || this.name == "ID" || this.name == "Id") return true;
if (this.value.indexOf("background-color") > -1) {
table.attr(this.name, this.value.replace(new RegExp("background-color", "g"),""));
} else {
table.attr(this.name, this.value);
}
});
table.css("text-align", "center").css("background-color", null); var tr = $("<tr></tr>").appendTo(table);
if (body) {
$(body.children[0]).children().each(function() {
var td = $("<td></td>").appendTo(tr);
td.css({
"width" : $(this).width(),
"font-size" : $(this).css("font-size"),
"background-color" : $(this).css("background-color"),
"font-weight" : "bold"
});
td.text($(this).text());
});
} //滚动事件
function internalScroll() {
var top = obj.scrollTop();
if (top <= 100 - headHeight) {
headDiv.css("display","");
}else{
headDiv.css("display","none");
}
$("#btnTest").val(top + " " + head.height());
} $(window).resize(function() {
setTimeout(100, doResize());
}); function doResize() {
headDiv.css("width", p[0].scrollWidth);
var tbl = $("#tblFixHeader");
if (tbl && tbl.length == 1) {
var line = obj.children().get(0).children[0];
if (line) {
var line2 = tbl.children().get(0).children[0];
if (line2) {
for (var i = 0; i < line.children.length; i++) {
$(line2.children[i]).css("width", $(line.children[i]).css("width"));
}
}
}
}
}
}
};
})(jQuery);

好用,就拿走。

Jquery 表格固定表头的更多相关文章

  1. jQuery制作多表格固定表头、切换表头的特效

    做了好几天的固定表头特效,总算是搞定了.先说明一下基本功能:我们在一个网页上浏览很多份表格数据的时候,肯定会碰到很多分不清表头,也分不清表 格是哪个的情况,这个时候我们就希望能有一种功能,就是我们再下 ...

  2. bootstrap表格固定表头,表格内容滚动条滚动显示

    直接贴代码--- <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> < ...

  3. table 表格固定表头和第一列、内容可滚动

    整理了下: <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" c ...

  4. JS+CSS - table 表格固定表头和第一列、内容可滚动 (转载)

    <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...

  5. jQuery 表格

    jQuery 表格插件汇总     本文搜集了大量 jQuery 表格插件,帮助 Web 设计者更好地驾御 HTML 表格,你可以对表格进行横向和竖向排序,设置固定表头,对表格进行搜索,对大表格进行分 ...

  6. jQuery 关于ScrollableGridPlugin.js(固定表头)插件的逐步解析

    以前写前台的时候需要用哪些效果从来都是有现成的东西拿来就用的,因为自己真的是有些懒,毫无探索精神,只重视结果,不追求过程. 这个ScrollableGridPlugin.js是从网上找到的一个具有固定 ...

  7. JQuery固定表头插件fixedtableheader源码注释

    在开发XX车站信息系统时,需要将大量数据显示在一个巨大的表格内部,由于表格是一个整体,无法分页,加之数据很多,超出一屏,为了方便用户,决定使用固定表头的插件,经过测试,发现JQuery 插件:fixe ...

  8. (转)用JQuery实现Fix表头表格

    本文转载自:http://www.cnblogs.com/evlon/archive/2009/06/12/1502239.html 我的技术要点: 1.用两个表,其中一个是表头,另一个是表格做表体 ...

  9. 固定表头,单元格td宽度自适应,多内容出现-横向纵向滚动条数据表格的<前世今生>

    固定表头,单元格td宽度自适应,多内容出现-横向纵向滚动条数据表格的<前世今生>     先上图例   & 无论多少数据--都完美! 背景:由于我司行业方向,需要很多数据报表,则t ...

随机推荐

  1. Vim小知识

    在退出vim编辑的时候,强制退出是q! 感叹号在前,即!q,表示执行外部shell命令,感叹号在后,即q!,表示强制执行vi命令.

  2. C语言相关图书推荐

    C Primer Plus(第5版 中文版) 作      者 [美] 普拉塔(Prata S.) 著:云巅工作室 编 出 版 社 人民邮电出版社 出版时间 2005-02-01 版      次 1 ...

  3. Tip提示框另类写法

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  4. Firefox 火狐网址生成二维码扩展推荐

    该扩展并未在火狐官方的扩展站中上线,在火狐中国的站点中也几乎很难找到,只是作为火狐中国版的一个集成扩展. 各位想要使用该扩展,但又不愿安装火狐中国版的的浏览迷可以通过以下地址独立安装该扩展. 扩展地址 ...

  5. Java多线程编程模式实战指南:Active Object模式(下)

    Active Object模式的评价与实现考量 Active Object模式通过将方法的调用与执行分离,实现了异步编程.有利于提高并发性,从而提高系统的吞吐率. Active Object模式还有个 ...

  6. 国外PHP学习网站书籍资料汇总

    这篇文章汇总了全面多样的PHP学习资源,包括书籍.网站.文章等,帮助你提高PHP开发能力,巩固PHP知识.结合上一篇<重磅资料!Github上的PHP资源汇总大全>,一定可以让你的PHP技 ...

  7. 通过源码学Java基础:InputStream、OutputStream、FileInputStream和FileOutputStream

    1. InputStream 1.1 说明 InputStream是一个抽象类,具体来讲: This abstract class is the superclass of all classes r ...

  8. java tools: jstack

    SYNOPSIS jstack [ option ] pidclick here to see other detail If the given process is running on a 64 ...

  9. linux信号量超过系统限制

    部署一台新服务器,信号量报错,观察也没有key冲突,错误分析及解决如下: 创建一个不存在的信号量集返回参数错误的报错,因为信号量集的信号量数量超过了系统限制. 系统默认 /home/poc#ipcs ...

  10. 比较器comparable与comparator的使用

    在Java学习和使用里,工具类与算法类(collections和Arrays)也是我们使用比较多的,在它们里面就包含了comparable与comparator这两种比较器. 一.比较器的分类与概念 ...