当前位置: 代码迷 >> Web前端 >> table固定展示第一行数据,支持ie/firefox
  详细解决方案

table固定展示第一行数据,支持ie/firefox

热度:230   发布时间:2012-11-22 00:16:41.0
table固定显示第一行数据,支持ie/firefox .
滚动条滚动到最后一列,2个层能对齐是关键, 原理:利用动态显示scrollbar 来对齐。


<html>   
  <head>   
	  <title></title>   
	 
	  <script>


			   var EventUtil = new Object;
                EventUtil.addEventHandler = function (oTarget, sEventType, fnHandler) {
                    if (oTarget.addEventListener) {
                        oTarget.addEventListener(sEventType, fnHandler, false);
                    } else if (oTarget.attachEvent) {
                        oTarget.attachEvent("on" + sEventType, fnHandler);
                    } else {
                        oTarget["on" + sEventType] = fnHandler;
                    }
                };

				var oo = function(){
					var div = document.getElementById("divContent");
					var left = div.scrollLeft;
					var divHeader = document.getElementById("divHeader");
					divHeader.scrollLeft = left;

					var disWidth = div.children[0].style.width.replace("px","")-div.style.width.replace("px","");
					if(div.scrollLeft >= disWidth ){
						divHeader.style.overflowY = 'scroll';
					}else{
						divHeader.style.overflowY = 'hidden';
					}
				}

				window.onload = function() {
                    var oDiv = document.getElementById("divContent");   
                    EventUtil.addEventHandler(oDiv, "scroll", oo);
                }


			
	  </script>
  </head>   
    
    <body >  
<br>  

<div  id="div1All" style="margin-right: auto;margin-left: auto;overflow:auto; ">   


	<div  id="divHeader" style="margin-right: auto;margin-left: auto;overflow-y:hidden;overflow-x:hidden;width:600;">   
     <table     border=1  cellspacing=0   style="margin-top:-2px;width:800">   
            <TR     style="background:navy;color:white;width:800;height:30;" id="idTr">   
				<TD   nowrap width=20%>Header   A</TD>   
				<TD   nowrap width=20%>Header   B</TD>   
				<TD   nowrap width=20%>Header   C</TD> 
            </TR>   
     </table>      
	</div>

      <div  id="divContent" style="margin-right: auto;margin-left: auto;height:300;overflow:auto;width:600; ">   
            
			<table border=1 cellspacing=0 style="margin-top:-2px;width:800;" height=500> 
            <TR>   
				<TD width=20%>A</TD>   
				<TD width=20%>B</TD>   
				<TD   nowrap   width=20% >CCC</TD>   
            </TR>   
            <TR>   
				<TD>AAAAAAA</TD>   
				<TD>BBBBBBB</TD>   
				<TD>CCCCCCCC</TD>   
            </TR>    
            <TR>   
				<TD>AAAAAAA</TD>   
				<TD>BBBBBBB</TD>   
				<TD>CCCCCCCC</TD>   
            </TR>    
            <TR>   
				<TD>AAAAAAA</TD>   
				<TD>BBBBBBB</TD>   
				<TD>CCCCCCCC</TD>   
            </TR>    
            <TR>   
				<TD>AAAAAAA</TD>   
				<TD>BBBBBBB</TD>   
				<TD>CCCCCCCC</TD>   
            </TR>   
            </table>    
      </div>  

</div>

    </body>   
  </html> 
1 楼 alexChyi 2010-02-22  
bvbvb
  相关解决方案