<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<style>
.tabletitle {
font: icon;
color: buttontext;
background: threedhighlight;
border-top:1px solid #000000;
border-right: 1px solid #000000;
border-left-style: solid;
border-bottom-style: none;
border-left-width: 1px;
border-left-color: #000000;
}
.tabletitleTD {
background: #0099FF;
overflow:hidden;
height:15;
border-left:1px solid buttonhighlight;
border-right:1px solid buttonshadow;
border-top:1px solid buttonhighlight;
border-bottom:1px solid buttonshadow;
color: #FFFFFF;
}
.tableAct {
background: #FFFFFF;
font: icon;
color: buttontext;
border-right: 1px solid threedshadow;
}
.tableAct TD{
border-left: 1px solid buttonshadow;
}
.tdwbar{
cursor:w-resize;
background:buttonface;
behavior:url(dragline.htc);
}
.tt {
background-color: #FFFFFF;
border-top: 1px none #666666;
border-right: 1px none #666666;
border-bottom: 1px solid #666666;
border-left: 1px none #666666;
white-space: nowrap;
}
.myscroll{FONT-SIZE: 12px;SCROLLBAR-HIGHLIGHT-COLOR: #FFFFFF;SCROLLBAR-SHADOW-COLOR: #e1e1e1;SCROLLBAR-3DLIGHT-COLOR: #e1e1e1;SCROLLBAR-TRACK-COLOR: white; SCROLLBAR-DARKSHADOW-COLOR: white; scrollbar-Base-Color: white; scrollbar-arrow-Color:}
</style>
<SCRIPT LANGUAGE="JavaScript">
<!--
function TTable(name){
this.name=name;
this.cols=new Array();
this.rows=new Array();
this.items=new Array();
this.colcount=0;//实际是列输减一
this.rowcount=0;
this.data=new Array();
//style
this.width=100;//colum width
this.bgc="#e7e7e7";
this.fontfamily="tahoma,arial,helvetica";
//method
this.addData=addData;
this.trimData=trimData;
this.create=create;
this.display=display;
this.refresh=refresh;
}
function TItem(owner,name,data,rindex,cindex,width,bgc,ftc){
this.owner=owner;
this.name=name;
this.data=data;
this.rindex=rindex;
this.cindex=cindex;
this.width=width||owner.width;
this.bgc=bgc||owner.bgc;
this.htmlcode=!rindex?'\n<TD width="100" class="tabletitleTD" >'+data+'</TD>\n<TD width="2" rowspan="'+owner.colcount+'" class="tdwbar" ></TD>':'\n<TD class="tt">'+data+'</TD>';
}
function addData(){
var arg=addData.arguments;
var len=arg.length;
this.colcount=Math.max(this.colcount,len);
var tmpdata=new Array();
for(i=0;i<this.colcount;i++){
tmpdata[i]=!arg[i]?'':arg[i];
}
this.data[this.data.length]=tmpdata;
}
function trimData(){
for(i=0;i<this.data.length;i++){
for(j=0;j<this.colcount;j++){
this.data[i][j]=!this.data[i][j]?' ':this.data[i][j];
}
}
}
function create(){
for(i=0;i<this.data.length;i++){
this.items[i]=new Array;
for(j=0;j<this.colcount;j++){
this.items[i][j]=new TItem(this,this.data[i][j],this.data[i][j],i,j)
}
}
}
function display(){
this.htmlcode='';
this.htmlcode+='\n<div id="MainBG" style="position:absolute; left:100px; top:180px; z-index:1; ;border: 1px none #000000;overflow:auto;" class=myscroll>'
+'\n<div id="TableBG" style="position:absolute; left:0px; top:0px; z-index:2; border: 1px none #000000">'
+'\n<TABLE border="0" cellPadding="0" cellSpacing="0" class="tabletitle" id="tb1">';
for(i=0;i<this.data.length;i++){
this.htmlcode+='\n<tr>';
for(j=0;j<this.colcount;j++){
this.htmlcode+=this.items[i][j].htmlcode;
}
this.htmlcode+='\n</tr>';
}
this.htmlcode+='</table></div></div>';
// alert(this.htmlcode)
document.write(this.htmlcode)
}
/******************* drag function ************************/
function TDrag(){
this.x1=null;
this.x2=null;
this.obj=null;
this.tableW=null;
this.tdW=null;
this.table=null;
this.targetTD=null;
}
function getTdSid(sid){
var targetSID=sid-1;
while(document.all[targetSID].tagName!='TD'){targetSID--}
return targetSID
}
function mDown(){
oDrag.obj=window.event.srcElement;
if(oDrag.obj.tagName=='TD'&&oDrag.obj.rowSpan!=1){
document.body.style.cursor="e-resize";
var targetSID=getTdSid(event.srcElement.sourceIndex);
oDrag.targetTD=document.all[targetSID];
oDrag.table=event.srcElement.parentElement.parentElement.parentElement;
oDrag.tableW=table.clientWidth;
oDrag.x1=event.x
}else{
oDrag.obj=null;
return false
}
}
function mMove(){
if(!oDrag.obj)return false;
try{
if(window.event.x>=(MainBG.offsetLeft+MainBG.clientWidth))return false;
oDrag.x2=event.x;
var dW=oDrag.x2-oDrag.x1;
oDrag.targetTD.style.width=oDrag.targetTD.clientWidth+dW
oDrag.table.style.width=dW+oDrag.tableW;//------------>!!!
}
catch(x){}
}
function mUp(){
document.body.style.cursor="default";
oDrag.obj=null;
}
function refresh(){
table=TableBG.children[0]
TableBG.style.width=table.clientWidth;
TableBG.style.height=table.clientHeight;
MainBG.style.width=(TableBG.clientHright>=500)?500:TableBG.clientWidth;
MainBG.style.height=(TableBG.clientHright>=500)?500:TableBG.clientHeight+16;//默认,高度超过500px使用滚动
}
function dragInit(){
oDrag=new TDrag();
document.onmousedown = mDown
document.onmousemove = mMove
document.onmouseup = mUp;
}
//-->
</SCRIPT>
</HEAD>
<BODY onload="dragInit()">
<SCRIPT LANGUAGE="JavaScript">
<!--
ot=new TTable();
ot.addData('name','email','phoneCode','address','homepage','oicq')
ot.addData('llrock','[email protected]','123456789','Beijing','user1.7host.com/ccrock','1234567')
ot.addData(1,2,3,4)
ot.addData(1,2,'',4,5,6)
ot.addData(1,2,3,4,5)
//ot.data=[[1,2,3,4],2,3]
ot.trimData()
ot.create()
ot.display()
ot.refresh()
//-->
</SCRIPT>
</BODY>
</HTML>
<html>
<head>
<title>default</title>
</head><body>
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; height: 113%">
<tr>
<td style="height: 56px; background-color: #ccffff;">
ssssss</td>
</tr>
<tr>
<td>
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; height: 100%">
<tr>
<td style="width: 200px; text-align: center;" id="left">
left</td>
<td id="centerTD" style="width: 6px; background-color: #99ccff; cursor: w-resize;" >
<table style="width: 17px; height: 21px">
<tr>
<td id="ckcenter" style="width: 100px; height: 30px; font-weight: bold; font-size: x-small; color: red; cursor: default;" onclick="leftCon('left')">
≮</td>
</tr>
</table>
</td>
<td style="text-align: center; width: auto; overflow: auto;" >
right</td>
</tr>
</table>
</td>
</tr>
</table>
</body>
</html>
<script type="text/javascript">
function $(obj)
{
return document.getElementById(obj);
}
function leftCon(objID)
{
$(objID).style.display=($(objID).style.display=="none"?"block":"none");
if($(objID).style.display=="none")
{
$("ckcenter").innerHTML="≯";
}
else
{
$(objID).style.width="200px";
$("ckcenter").innerHTML="≮";
}
}
var down=false;
var bar = $("centerTD");
document.onmouseup = function(){down = false;};
bar.onmousedown = function(){ down = true; lLastX = window.event.x;};
//
document.onmousemove = function()
{
if(down)
{
if($("left").style.display=="left"){$(objID).style.display="block";}
var wit=parseInt($("left").style.width);
$("left").style.width=(wit + (window.event.x - lLastX)).toString()+"px";
if(parseInt($("left").style.width)<30){$("left").style.display="none";down=false;$("ckcenter").innerHTML="≯";}
else if(parseInt($("left").style.width)<30){$("left").style.display="block";down=true;}
//if(parseInt($("left").style.width)<10)down=false;
lLastX = window.event.x;
}
}
</script>