AutoCAD 3DMAX C语言 Pro/E UG JAVA编程 PHP编程 Maya动画 Matlab应用 Android
Photoshop Word Excel flash VB编程 VC编程 Coreldraw SolidWorks A Designer Unity3D
 首页 > JavaScript

JS实现的表头列头固定页面功能示例

51自学网 http://www.wanshiok.com
JS,表头,列头,固定页面,功能

本文实例讲述了JS实现的表头列头固定页面功能。分享给大家供大家参考,具体如下:

这里的示例演示了一个table页面,并固定表头或者列头,以达到excel冻结列的效果,主要使用的js的scrollTop,scrollLeft.

一.js中scrollTop及scrollLeft的使用说明

scrollTop指的是“元素中的内容”超出“元素上边界”的那部分的高度。例如:外层元素的高度值是200px,内层元素的高度值是300px。很明显,“外层元素中的内容”高过了“外层元素”本身.当向下拖动滚动条时,有部分内容会隐没在“外层元素的上边界”之外,scrollTop就等于这部分“不可见的内容”的高度。

scrollLeft同上.

二.页面示例

页面示例代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">  <html xmlns="http://www.w3.org/1999/xhtml">  <head>  <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />  <title>表头列头固定 -- Sara</title>  <style>    body{font-size:12px;}    .t_n{width:30px; heihgt:240px!important; height:242px; background:buttonface; float:left; border-bottom:1px solid #000; border-left:1px solid #000}    .t_n span{display:block; text-align:center; line-height:20px; border:1px solid #000; width:28px; height:20px}    .t_number{border-right:1px solid #000; width:100%; margin-bottom:5px}    .t_number td{border-bottom:1px solid #000; width:30px; height:25px; text-align:center}    .dd{height:200px!important; height:208px; overflow-y:hidden;}    .t_i{width:400px; height:auto; float:left; border-right:1px solid #000; border-top:1px solid #000}    .t_i_h{width:100%; overflow-x:hidden; background:buttonface;}    .ee{width:618px!important; width:620px}    .t_i_h table{width:600px;}    .t_i_h table td{border-right:1px solid #000; border-bottom:1px solid #000; height:20px; text-align:center}    .cc{width:100%; height:220px; border-bottom:1px solid #000; border-right:1px solid #000; background:#fff; overflow:auto;}    .cc table{width:600px; }    .cc table td{height:25px; border-bottom:1px solid #000; border-right:1px solid #000; text-align:center}  </style>  <script>   function aa(){     var a=document.getElementById("cc").scrollTop;     var b=document.getElementById("cc").scrollLeft;     document.getElementById("dd").scrollTop=a;     document.getElementById("hh").scrollLeft=b;   }  </script>  </head>  <body>  <div class="t_n">    <span>序号</span>    <div class="dd" id="dd">      <table cellpadding="0" cellspacing="0" border="0" class="t_number">        <tbody>          <tr>          <td>1</td>          </tr>          <tr>          <td>2</td>          </tr>          <tr>          <td>3</td>          </tr>          <tr>          <td>4</td>          </tr>          <tr>          <td>5</td>          </tr>          <tr>          <td>6</td>          </tr>          <tr>          <td>7</td>          </tr>          <tr>          <td>8</td>          </tr>          <tr>          <td>9</td>          </tr>          <tr>          <td>10</td>          </tr>        </tbody>      </table>    </div>  </div>  <!--table-->  <div class="t_i">    <div class="t_i_h" id="hh">      <div class="ee">        <table cellpadding="0" cellspacing="0" border="0">         <tr>          <td width="10%">标题A</td>          <td width="20%">标题B</td>          <td width="10%">标题C</td>          <td width="20%">标题D</td>          <td width="20%">标题E</td>          <td width="20%">标题F</td>         </tr>        </table>      </div>    </div>    <div class="cc" id="cc" onscroll="aa()">      <table cellpadding="0" cellspacing="0" border="0">        <tr>          <td width="10%">1</td>          <td width="20%">1</td>          <td width="10%">1</td>          <td width="20%">1</td>          <td width="20%">1</td>          <td width="20%">1</td>        </tr>        <tr>          <td>2</td>          <td>2</td>          <td>2</td>          <td>2</td>          <td>2</td>          <td>2</td>        </tr>        <tr>          <td>3</td>          <td>3</td>          <td>3</td>          <td>3</td>          <td>3</td>          <td>3</td>        </tr>        <tr>          <td>4</td>          <td>4</td>          <td>4</td>          <td>4</td>          <td>4</td>          <td>4</td>        </tr>        <tr>          <td>5</td>          <td>5</td>          <td>5</td>          <td>5</td>          <td>5</td>          <td>5</td>        </tr>        <tr>          <td>6</td>          <td>6</td>          <td>6</td>          <td>6</td>          <td>6</td>          <td>6</td>        </tr>        <tr>          <td>7</td>          <td>7</td>          <td>7</td>          <td>7</td>          <td>7</td>          <td>7</td>        </tr>        <tr>          <td>8</td>          <td>8</td>          <td>8</td>          <td>8</td>          <td>8</td>          <td>8</td>        </tr>        <tr>          <td>9</td>          <td>9</td>          <td>9</td>          <td>9</td>          <td>9</td>          <td>9</td>        </tr>        <tr>          <td>10</td>          <td>10</td>          <td>10</td>          <td>10</td>          <td>10</td>          <td>10</td>        </tr>      </table>    </div>  </div>  </body></html>

效果图如下:

更多关于JavaScript相关内容感兴趣的读者可查看本站专题:《JavaScript操作DOM技巧总结》、《JavaScript表单(form)操作技巧大全》、《JavaScript数组操作技巧总结》、《JavaScript排序算法总结》、《JavaScript遍历算法与技巧总结》、《JavaScript数学运算用法总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript查找算法技巧总结》及《JavaScript错误与调试技巧总结

希望本文所述对大家JavaScript程序设计有所帮助。


JS,表头,列头,固定页面,功能  
上一篇:详解Vue自定义过滤器的实现  下一篇:VUE JS 使用组件实现双向绑定的示例代码