<html><head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>JK:支持民族工业,尽量少买X货</title>
<script language="javascript">
var currentResizeTdObj=null;
function MouseDownToResize(event,obj){
obj=obj||this;
event=event||window.event;
currentResizeTdObj=obj;
obj.mouseDownX=event.clientX;
obj.mouseDownY=event.clientY;
obj.tdW=obj.offsetWidth;
obj.tdH=obj.offsetHeight;
if(obj.setCapture) obj.setCapture();
else event.preventDefault();
}
function MouseMoveToResize(event){
if(!currentResizeTdObj) return ;
var obj=currentResizeTdObj;
event=event||window.event;
if(!obj.mouseDownX) return false;
if(obj.parentNode.rowIndex==0) {
var newWidth=obj.tdW*1+event.clientX*1-obj.mouseDownX;
if(newWidth>0) obj.style.width = newWidth;
else obj.style.width =1;
}
if(obj.cellIndex==0){
var newHeight=obj.tdH*1+event.clientY*1-obj.mouseDownY;
if(newHeight>0) obj.style.height = newHeight;
else obj.style.height =1;
}
}
function MouseUpToResize(){
if(!currentResizeTdObj) return;
if (currentResizeTdObj.releaseCapture) currentResizeTdObj.releaseCapture();
currentResizeTdObj=null;
}
//改变表格行列宽函数
function ResizeTable_Init(table,needChangeWidth,needChangeHeight)
{
if(!needChangeWidth && !needChangeHeight) return;
var oTh=table.rows[0];
if(needChangeWidth){
for(var i=0;i<oTh.cells.length;i++) {
var cell=oTh.cells[i];
cell.style.cursor="e-resize";
cell.style.width=cell.offsetWidth;
cell.onmousedown =MouseDownToResize;
}
}
if(needChangeHeight){
for(var j=0;j<table.rows.length;j++) {
var cell=table.rows[j].cells[0];
cell.style.cursor="s-resize";
cell.onmousedown =MouseDownToResize;
}
}
if(needChangeWidth && needChangeHeight) oTh.cells[0].style.cursor="se-resize";
table.style.width=null;
table.style.tableLayout="fixed";
}//函数块定义结束</script></head><body onmousemove="MouseMoveToResize(event);" onmouseup="MouseUpToResize();" ><table border="1" id="table1" style="width:100%;background-color:#eeeeee;" >
<tr id="TH1">
<td > </td>
<td >header1</td>
<td >header2</td>
<td >header3</td>
<td >hello hello hello</td>
</tr>
<tr>
<td >1</td>
<td >1</td>
<td >
thank you thany you </td>
<td >男儿气壮</td>
<td ><select><option>hello Hello</option></select></td>
</tr>
<tr>
<td >2</td>
<td >2</td>
<td >
you are welcome </td>
<td >胸中吐万丈长虹</td>
<td ><input type="text" name="T4" size="20" value="Hello Hello"></td>
</tr>
</table>
<script language ="javascript">
ResizeTable_Init(document.getElementById("table1"),true,true);
</script>
</body></html>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>JK:支持民族工业,尽量少买X货</title>
<script language="javascript">
var currentResizeTdObj=null;
function MouseDownToResize(event,obj){
obj=obj||this;
event=event||window.event;
currentResizeTdObj=obj;
obj.mouseDownX=event.clientX;
obj.mouseDownY=event.clientY;
obj.tdW=obj.offsetWidth;
obj.tdH=obj.offsetHeight;
if(obj.setCapture) obj.setCapture();
else event.preventDefault();
}
function MouseMoveToResize(event){
if(!currentResizeTdObj) return ;
var obj=currentResizeTdObj;
event=event||window.event;
if(!obj.mouseDownX) return false;
if(obj.parentNode.rowIndex==0) {
var newWidth=obj.tdW*1+event.clientX*1-obj.mouseDownX;
if(newWidth>0) obj.style.width = newWidth;
else obj.style.width =1;
}
if(obj.cellIndex==0){
var newHeight=obj.tdH*1+event.clientY*1-obj.mouseDownY;
if(newHeight>0) obj.style.height = newHeight;
else obj.style.height =1;
}
}
function MouseUpToResize(){
if(!currentResizeTdObj) return;
if (currentResizeTdObj.releaseCapture) currentResizeTdObj.releaseCapture();
currentResizeTdObj=null;
}
//改变表格行列宽函数
function ResizeTable_Init(table,needChangeWidth,needChangeHeight)
{
if(!needChangeWidth && !needChangeHeight) return;
var oTh=table.rows[0];
if(needChangeWidth){
for(var i=0;i<oTh.cells.length;i++) {
var cell=oTh.cells[i];
cell.style.cursor="e-resize";
cell.style.width=cell.offsetWidth;
cell.onmousedown =MouseDownToResize;
}
}
if(needChangeHeight){
for(var j=0;j<table.rows.length;j++) {
var cell=table.rows[j].cells[0];
cell.style.cursor="s-resize";
cell.onmousedown =MouseDownToResize;
}
}
if(needChangeWidth && needChangeHeight) oTh.cells[0].style.cursor="se-resize";
table.style.width=null;
table.style.tableLayout="fixed";
}//函数块定义结束</script></head><body onmousemove="MouseMoveToResize(event);" onmouseup="MouseUpToResize();" ><table border="1" id="table1" style="width:100%;background-color:#eeeeee;" >
<tr id="TH1">
<td > </td>
<td >header1</td>
<td >header2</td>
<td >header3</td>
<td >hello hello hello</td>
</tr>
<tr>
<td >1</td>
<td >1</td>
<td >
thank you thany you </td>
<td >男儿气壮</td>
<td ><select><option>hello Hello</option></select></td>
</tr>
<tr>
<td >2</td>
<td >2</td>
<td >
you are welcome </td>
<td >胸中吐万丈长虹</td>
<td ><input type="text" name="T4" size="20" value="Hello Hello"></td>
</tr>
</table>
<script language ="javascript">
ResizeTable_Init(document.getElementById("table1"),true,true);
</script>
</body></html>
解决方案 »
- js高手过来集合!
- 请问各位老大关于引用外部 .js文件的问题,先谢谢了
- 正则表达式问题.
- 奇怪的问题:如何刷新页面,FORM表单呈现未激活状态!!
- 问个焦点设置问题window.event.srcElement.focus();这句怎么没反应?
- 在父窗口有<iframe id=textEdit>,那么在其他窗口选择了要插入图片的路径,怎么把图片插入到父窗口的<iframe>里,谢谢
- 初学者寻找zzz资料(不如受我以渔)
- 请问如何把浏览器上工具条里的"前进、后退"按钮设置成灰色(不可用)
- 一个关于聊天室的问题啊?给分啊!!!
- 我就这么点分了!谁帮我解释一下滤镜呀!那个用来处理图象的!在JAVBASCRIPT!
- 鼠标移上显示文字的问题
- 高分求助,用js新开窗口,怎么能避免被浏览器插件屏蔽~~~我就是要他显示,不能被屏蔽~
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>JK:支持民族工业,尽量少买X货</title>
<script language="javascript">
var ResizeTable_CurrentTdObj=null;
function ResizeTable_MouseDown(event,obj){
obj=obj||this;
event=event||window.event;
ResizeTable_CurrentTdObj=obj;
obj.mouseDownX=event.clientX;
obj.mouseDownY=event.clientY;
obj.tdW=obj.offsetWidth;
obj.tdH=obj.offsetHeight;
if(obj.setCapture) obj.setCapture();
else event.preventDefault();
}
function ResizeTable_MouseMove(event){
if(!ResizeTable_CurrentTdObj) return ;
var obj=ResizeTable_CurrentTdObj;
event=event||window.event;
if(!obj.mouseDownX) return false;
if(obj.parentNode.rowIndex==0) {
var newWidth=obj.tdW*1+event.clientX*1-obj.mouseDownX;
if(newWidth>0) obj.style.width = newWidth;
else obj.style.width =1;
}
if(obj.cellIndex==0){
var newHeight=obj.tdH*1+event.clientY*1-obj.mouseDownY;
if(newHeight>0) obj.style.height = newHeight;
else obj.style.height =1;
}
}
function ResizeTable_MouseUp(){
if(!ResizeTable_CurrentTdObj) return;
if (ResizeTable_CurrentTdObj.releaseCapture) ResizeTable_CurrentTdObj.releaseCapture();
ResizeTable_CurrentTdObj=null;
}
function ResizeTable_Init(table,needChangeWidth,needChangeHeight)
{
if(!needChangeWidth && !needChangeHeight) return;
var oTh=table.rows[0];
if(needChangeWidth){
for(var i=0;i<oTh.cells.length;i++) {
var cell=oTh.cells[i];
cell.style.cursor="e-resize";
cell.style.width=cell.offsetWidth;
cell.onmousedown =ResizeTable_MouseDown;
}
}
if(needChangeHeight){
for(var j=0;j<table.rows.length;j++) {
var cell=table.rows[j].cells[0];
cell.style.cursor="s-resize";
cell.onmousedown =ResizeTable_MouseDown;
}
}
if(needChangeWidth && needChangeHeight) oTh.cells[0].style.cursor="se-resize";
table.style.width=null;
table.style.tableLayout="fixed";
}</script></head><body onmousemove="ResizeTable_MouseMove(event);" onmouseup="ResizeTable_MouseUp();" >
<div style="font-size:10pt;">
注1:改变Table的列宽<br/>
注2:部分代码来自csdn网友bluedoctor:http://community.csdn.net/Expert/topic/5282/5282361.xml<br/>
<br/>
注:本页面仅在IE6/Firefox1.5下测试过(效果不一致)。其它浏览器或其它版本未经测试。<br/>
注-----:JK:<a href="mailTo:[email protected]?subject=About%20ChangeColumnWidth">[email protected]</a><br/>
<hr/>
</div>
<table border="1" id="table1" style="width:100%;background-color:#eeeeee;" >
<tr >
<td >&nbps;</td>
<td >header1</td>
<td >header2</td>
<td >header3</td>
<td >hello hello hello</td>
</tr>
<tr>
<td >1</td>
<td >1</td>
<td >thank you thank you </td>
<td >男儿气壮</td>
<td ><select><option>hello Hello</option></select></td>
</tr>
<tr>
<td >2</td>
<td >2</td>
<td >you are welcome </td>
<td >胸中吐万丈长虹</td>
<td ><input type="text" name="T4" size="20" value="Hello Hello"></td>
</tr>
</table>
<script language ="javascript">
ResizeTable_Init(document.getElementById("table1"),true,true);
</script>
</body></html>
拖动到这种状态就不到了。 为何遮蔽不了TD中的字呢