ZhangLiHai.Com Blog


动态调整表格单元宽度

张利海 于 2003年06月11日 发表

<HTML>
<HEAD>
<META NAME="GENERATOR" Content="Microsoft FrontPage 4.0">
<TITLE></TITLE>
<Script Language=VbScript>
'//****************************************
'QQ:66840199
'//****************************************
Dim CurState
Dim CurDown
Dim CurId
Dim OldPlace,NewPlace

Sub MoveCol(MyColId)
window.status =window.document.body.scrollLeft
If CurDown=False Then
If window.event.x + window.document.body.scrollLeft > CurTable + window.document.body.all(CurId).offsetLeft + window.document.body.all(CurId).offsetWidth-3 Then

CurState=True
window.document.body.style.cursor="move"
Else
CurState=False
window.document.body.style.cursor="Default"
End If
CurId=MyColId
End If
End Sub

Sub UpBody()
If CurState=True Then

NewPlace=window.event.x + window.document.body.scrollLeft
If (MyDiv.offsetLeft + MyLine.offsetLeft) > CurTable + window.document.body.all(CurId).offsetLeft +20 Then
window.document.body.all(CurId).Width = window.document.body.all(CurId).Width - (OldPlace - NewPlace)
MyTable.width=MyTable.Width - (OldPlace - NewPlace)
window.document.body.all(CurId).innertext=window.document.body.all(CurId).Width
End If
'*************************************************************
CurState=False
CurDown=False
MyDiv.style.display="None"
window.document.body.style.cursor="Default"
End If
End Sub

Sub DownBody()
If CurState=True Then
CurDown=True
'*********????**********
MyDiv.style.display=""
MyLine.style.Height= MyTable.offsetHeight
MyLine.style.width = 1
MyDiv.style.Left = window.event.x + window.document.body.scrollLeft - MyLine.offsetLeft
MyDiv.style.Top = MyTable.offsetTop - MyLine.offsetTop
'***************************
OldPlace=window.event.x + window.document.body.scrollLeft
End If
End Sub

Sub MoveBody()
If CurDown=True Then
MyDiv.style.Left = window.event.x + window.document.body.scrollLeft - MyLine.offsetLeft
window.document.body.style.cursor="move"
End If
End Sub

Sub SelectBody()
If CurDown=True Then
window.event.returnvalue=False
End If
End Sub
</Script>
</HEAD>
<BODY onmousedown=DownBody() OnMouseOver=MoveBody() OnMouseUp=UpBody() onselectstart=SelectBody()>
<DIV Id=MyDiv style="DISPLAY: none; HEIGHT: 201px; LEFT: 12px; POSITION: absolute; TOP: 50px; WIDTH: 28px; Z-INDEX: 1">
<hr Id=MyLine width="1" size="200" noshade Color="black">
</DIV>
<TABLE Id=MyTable border=0 cellPadding=0 cellSpacing=0 width="300">
<TR Id=MyRow01>
<TD Width="100" Id="MyCol01" onmousemove="MoveCol 'MyCol01'">01</TD>
<TD Width="100" Id="MyCol02" onmousemove="MoveCol 'MyCol02'">02</TD>
<TD Width="100" Id="MyCol03" onmousemove="MoveCol 'MyCol03'">03</TD></TR>
<TR Id=MyRow02>
<TD>04</TD>
<TD>05</TD>
<TD>06</TD></TR>
<TR Id=MyRow03>
<TD>07</TD>
<TD>08</TD>
<TD>09</TD></TR>
<TR>
<TD>10</TD>
<TD>11</TD>
<TD>12</TD></TR>
</TABLE>
<SCRIPT Language=VbScript>
Dim CurTable
CurTable=MyTable.offsetLeft

Dim TabII,TabJJ
Dim CurWidth
For TabII=0 To (MyTable.Rows.length-1)
For TabJJ=0 To (MyTable.Rows(TabII).cells.length-1)
If MyTable.Rows(TabII).cells(TabJJ).innerHtml="" Then
MyTable.Rows(TabII).cells(TabJJ).innerHtml=" "
End If
CurWidth="1"
If TabII=0 Then
CurWidth="2"
End If
MyTable.Rows(TabII).cells(TabJJ).Style.bordertop=CurWidth & "px solid Black"
CurWidth="1"
If TabJJ=0 Then
CurWidth="2"
End If
MyTable.Rows(TabII).cells(TabJJ).Style.borderleft=CurWidth & "px solid Black"
If TabII=(MyTable.Rows.length-1) Then
MyTable.Rows(TabII).cells(TabJJ).Style.borderbottom="2px solid Black"
End If
If TabJJ=(MyTable.Rows(TabII).cells.length-1) Then
MyTable.Rows(TabII).cells(TabJJ).Style.borderright="2px solid Black"
End If
Next
Next
</SCRIPT>
</BODY>
</HTML>
-------------------------------------------------------------------
摘自:csdn.net

新版本Blog中有更多内容
Copyright (C)2002-2007 All Rights Reserved Powered By:ZhangLiHai.Com