Jquery原生态实现表格header头随滚动条滚动而滚动


Posted in Javascript onMarch 18, 2014

最近在做一个项目,功能已经实现,突然用户要求表头是浮动的(因为内容在同一页面展示,当滚动时,看不到列头)。由于功能已经实现使用jquery+纯html,为了改动少只能使用jquery原生态实现滚动。

html表头代码:

<tr class="header" > 
<td width="150" style="border-bottom:0px;"> </td> 
<td colspan="2" style="border-bottom:0px;"> </td> 
<td colspan="7">师资力量</td> 
<td colspan="14">科研</td> 
<td style="border-bottom:0px;"> </td> 
</tr> 
<tr class="header"> 
<td width="150" style="border-top:0px;border-bottom:0px;"> </td> 
<td colspan="2" style="border-top:0px;">人才培养</td> 
<td colspan="3">职称结构</td> 
<td colspan="2">学位结构</td> 
<td colspan="2">生师比</td> 
<td colspan="2">科研项目</td> 
<td colspan="6">科研成果奖</td> 
<td colspan="6">科研论文</td> 
<td style="border-top:0px;border-bottom:0px;"> </td> 
</tr> 
<tr class="header"> 
<td width="150" style="border-top:0px;">教学单位</td> 
<td><a href="javascript:void(0);" id="undergraduate">本科生数</a></td> 
<td><a href="javascript:void(0);" id="graduate">研究生数</a></td> 
<td>教职工数</td> 
<td>高级教职工数</td> 
<td>中级教职工数</td> 
<td>博士学位职工数</td> 
<td>硕士学位教职工数</td> 
<td>本科生生师比</td> 
<td>研究生生师比</td> 
<td>纵向项目</td> 
<td>横向项目</td> 
<td>国家级科研成果</td> 
<td>部级科研成果</td> 
<td>省级科研成果</td> 
<td>地级科研成果</td> 
<td>校级科研成果</td> 
<td>其它科研成果</td> 
<td>核心期刊论文</td> 
<td>一类奖励期刊论文</td> 
<td>二类奖励期刊论文</td> 
<td>三类奖励期刊论文</td> 
<td>一般期刊论文</td> 
<td>国外期刊论文</td> 
<td style="border-top:0px;">财务工资</td> 
</tr>

jquery代码:
$(window).scroll(function(){ 
var headers = $(".header");//获取所有表头行,当前的是3行表头 
var yy = $(this).scrollTop();//滚动条top值 
if(yy>55){ 
yy = yy-55; 
} 
var height1 = yy;//第一行top值 
var height2 = $(headers[0]).height()+yy;<span style="font-family:Arial,Helvetica,sans-serif">//第一行top值,第一行行高与</span><span style="font-family:Arial,Helvetica,sans-serif">滚动条top值之和</span><span style="font-family:Arial,Helvetica,sans-serif"> 
</span> var height3 = $(headers[0]).height()+$(headers[1]).height()+yy; 
$(headers[0]).css({"position":"absolute",top:height1+"px"});//浮动行 
$(headers[1]).css({"position":"absolute",top:height2+"px"}); 
$(headers[2]).css({"position":"absolute",top:height3+"px"}); [javascript] view plaincopy 
$("#hiddenTd").height($(headers[0]).height()+$(headers[1]).height()+$(headers[2]).height());<span style="font-family:Arial,Helvetica,sans-serif">//由于表头浮动,对应的表内容自动上移,为了浮动表头不会覆盖表内容,设置空行,高度为表头高</span>

注意:多行表头时,单元格不要使用rowspan属性,否则表头会错位。
Javascript 相关文章推荐
javascript cookies 设置、读取、删除实例代码
Apr 12 Javascript
使用js在页面中绘制表格核心代码
Sep 16 Javascript
JS画5角星方法介绍
Sep 17 Javascript
jquery中的过滤操作详细解析
Dec 02 Javascript
Js表格万条数据瞬间加载实现代码
Feb 20 Javascript
JavaScript运行时库属性一览表
Mar 14 Javascript
JS中处理时间之setUTCMinutes()方法的使用
Jun 12 Javascript
jQuery+CSS实现简单切换菜单示例
Jul 27 Javascript
浅析ES6的八进制与二进制整数字面量
Aug 30 Javascript
JS实现简单的天数计算器完整实例
Apr 28 Javascript
vue中各种通信传值方式总结
Feb 14 Javascript
Vue scoped及deep使用方法解析
Aug 01 Javascript
使用CSS3的scale实现网页整体缩放
Mar 18 #Javascript
使用jquery实现IE下按backspace相当于返回操作
Mar 18 #Javascript
运用JQuery的toggle实现网页加载完成自动弹窗
Mar 18 #Javascript
js身份证判断方法支持15位和18位
Mar 18 #Javascript
验证码在IE中不刷新而谷歌等浏览器正常的解决方案
Mar 18 #Javascript
用js将内容复制到剪贴板兼容浏览器
Mar 18 #Javascript
javascript页面上使用动态时间具体实现
Mar 18 #Javascript
You might like
PHP动态分页函数,PHP开发分页必备啦
2011/11/07 PHP
php实现的mysqldb读写分离操作类示例
2017/02/07 PHP
JavaScript 事件属性绑定带参数的函数
2009/03/13 Javascript
模拟多级复选框效果的jquery代码
2013/08/13 Javascript
jQuery使用$.get()方法从服务器文件载入数据实例
2015/03/25 Javascript
javascript的变量、传值、传址、参数之间关系
2015/07/26 Javascript
基于jQuery倒计时插件实现团购秒杀效果
2016/05/13 Javascript
Javascript小技能总结(推荐)
2016/06/02 Javascript
AngularJS 过滤与排序详解及实例代码
2016/09/14 Javascript
JavaScript 字符串常用操作小结(非常实用)
2016/11/30 Javascript
javascript中setAttribute兼容性用法分析
2016/12/12 Javascript
js实现省级联动(数据结构优化)
2020/07/17 Javascript
Python函数中定义参数的四种方式
2014/11/30 Python
使用Python发送各种形式的邮件的方法汇总
2015/11/09 Python
Python2实现的图片文本识别功能详解
2018/07/11 Python
python 求一个列表中所有元素的乘积实例
2019/06/11 Python
关于python字符串方法分类详解
2019/08/20 Python
Pycharm+django2.2+python3.6+MySQL实现简单的考试报名系统
2019/09/05 Python
如何利用python发送邮件
2020/09/26 Python
Python获取指定网段正在使用的IP
2020/12/14 Python
如何用border-image实现文字气泡边框的示例代码
2020/01/21 HTML / CSS
80年代复古T恤:TruffleShuffle
2018/07/02 全球购物
Nisbets爱尔兰:英国最大的厨房和餐饮设备供应商
2019/01/26 全球购物
.NET是怎么支持多种语言的
2015/02/24 面试题
物流经理自我评价
2013/09/23 职场文书
对祖国的寄语大全
2014/04/11 职场文书
养成教育经验材料
2014/05/26 职场文书
检察院对照“四风”认真查找问题落实整改措施
2014/09/26 职场文书
写给医生的感谢信
2015/01/22 职场文书
2015年秋季运动会前导词
2015/07/20 职场文书
2016拓展训练心得体会范文
2016/01/12 职场文书
高三语文教学反思
2016/02/16 职场文书
Python还能这么玩之用Python做个小游戏的外挂
2021/06/04 Python
Python实现DBSCAN聚类算法并样例测试
2021/06/22 Python
dubbo集成zipkin获取Traceid的实现
2021/07/26 Java/Android
Nginx代理Redis哨兵主从配置的实现
2022/07/15 Servers