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 相关文章推荐
window.event快达到全浏览器支持了,以后使用就方便了
Nov 30 Javascript
javascript判断office版本示例
Apr 11 Javascript
JS实现网页标题栏显示当前时间和日期的完整代码
Nov 02 Javascript
AngularJs定制样式插入到ueditor中的问题小结
Aug 01 Javascript
JS使用正则表达式过滤多个词语并替换为相同长度星号的方法
Aug 03 Javascript
详解打造 Vue.js 可复用组件
Mar 24 Javascript
jQuery实现文章图片弹出放大效果
Apr 06 jQuery
jquery拖动改变div大小
Jul 04 jQuery
微信小程序表单验证功能完整实例
Dec 01 Javascript
jQuery 实现左右两侧菜单添加、移除功能
Jan 02 jQuery
解决jquery的ajax调取后端数据成功却渲染失败的问题
Aug 08 jQuery
微信小程序利用for循环解决内容变更问题
Mar 05 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
基于session_unset与session_destroy的区别详解
2013/06/03 PHP
destoon网站转移服务器后搜索汉字出现乱码的解决方法
2014/06/21 PHP
Linux下创建nginx脚本-start、stop、reload…
2014/08/03 PHP
magento后台无法登录解决办法的两种方法
2016/12/09 PHP
jQuery DIV弹出效果实现代码
2009/07/03 Javascript
Chosen 基于jquery的选择框插件使用方法
2012/05/30 Javascript
ANT 压缩(去掉空格/注释)JS文件可提高js运行速度
2013/04/15 Javascript
jQuery提示插件alertify使用指南
2015/04/21 Javascript
jQuery树形下拉菜单特效代码分享
2015/08/15 Javascript
JavaScript中实现Map的示例代码
2015/09/09 Javascript
node.js抓取并分析网页内容有无特殊内容的js文件
2015/11/17 Javascript
详解AngularJS中自定义过滤器
2015/12/28 Javascript
JavaScript通过HTML的class来获取HTML元素的方法总结
2016/05/24 Javascript
JavaScript仿微博发布信息案例
2016/11/16 Javascript
jQuery动态产生select option下拉列表
2017/03/15 Javascript
JavaScript实现职责链模式概述
2018/01/25 Javascript
js删除对象/数组中null、undefined、空对象及空数组方法示例
2018/11/14 Javascript
Vuepress 搭建带评论功能的静态博客的实现
2019/02/17 Javascript
JS Ajax请求会话过期处理问题解决方法分析
2019/11/16 Javascript
nodeJs的安装与npm全局环境变量的配置详解
2020/01/06 NodeJs
JS document文档的简单操作完整示例
2020/01/13 Javascript
修改vue源码实现动态路由缓存的方法
2020/01/21 Javascript
[04:03]DOTA2肉山黑名单梦之声 风暴之灵中文配音鉴赏
2013/07/03 DOTA
python3中str(字符串)的使用教程
2017/03/23 Python
Python插件机制实现详解
2020/05/04 Python
python递归函数用法详解
2020/10/26 Python
利用Python批量识别电子账单数据的方法
2021/02/08 Python
平面设计的岗位职责
2013/11/08 职场文书
高中运动会入场词
2014/02/14 职场文书
信用卡工作证明模板
2014/09/14 职场文书
销售简历自我评价怎么写
2014/09/26 职场文书
杨善洲电影观后感
2015/06/04 职场文书
大学入学感言
2015/08/01 职场文书
竞聘书的秘诀
2019/04/02 职场文书
如何在Python中创建二叉树
2021/03/30 Python
MyBatis 动态SQL全面详解
2021/10/05 MySQL