台灣最大程式設計社群網站
線上人數
544
 
會員總數:245785
討論主題:189420
歡迎您免費加入會員
討論區列表 >> 專欄文章 >> 表格的選取
[]  
[我要回覆]
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
表格的選取
價值 : 0 QP  點閱數:806 回應數:0
樓主

站務人員 站長
門外漢
0 1580
542 9
發送站內信

捐贈 VP 給 站務人員
每次Mouse click就檢查object的bgColor來決定先前狀態....

//假設原來TD的bgColor="" (空值)
function chk_click(obj){
if (obj.bgColor=="") //表示這個TD CELL未被選取
obj.bgColor="#CCFF99"; //將bgColor改為指定顏色,表示這個TD CELL被選取
else
obj.bgColor=""; //不設定bgColor,表示這個TD CELL未被選取
}
說明:也可用 obj.style.backgroundColor="*****";
.....
<TD onClick="chk_click(this)">1000</TD>
....

================================================================
<script language="javascript">
function changeBG(chk,obj){
if (chk==0)
obj.style.backgroundColor="#CCFF99"; //指定背景顏色
else
obj.style.backgroundColor=""; //取消背景顏色
}
</script>

在每個TD後加入 onmouseover及onmouseout事件處理...即可

<TABLE>
<TR>
<TD onMouseOver="changeBG(0,this)" onMouseOut="changeBG(1,this)">11111</TD>
.....



=====================================================================
回應者: diabo

http://home.pchome.com.tw/web/p5/Excel.htm

PS.目前判斷加的還不夠,水平跨行會有問題,垂直跨行似乎還可以接受.....
Source Code如下:
<style>
TH {border:1px outset #C0C0C0}
</style>
<script language="javascript">
var SelectStart;
var SelectEnd;
function SetStart(obj){
var myTD=document.all.tags("TD");
for(i=0;i<myTD.length;i++)
if(obj==myTD(i)) SelectStart=i;
}
function SetEnd(obj){
var myTD=document.all.tags("TD");
for(i=0;i<myTD.length;i++)
if(obj==myTD(i)) SelectEnd=i;
tmp = Math.abs(SelectEnd-SelectStart);
if(tmp<=6)
if(SelectEnd>SelectStart)
for(j=SelectStart;j<=SelectEnd;j++)
myTD(j).bgColor="#003399";
else
for(j=SelectEnd;j<=SelectStart;j++)
myTD(j).bgColor="#003399";
else
if(SelectEnd>SelectStart)
for(j=SelectStart;j<=SelectEnd;j+=6)
myTD(j).bgColor="#003399";
else
for(j=SelectEnd;j<=SelectStart;j+=6)
myTD(j).bgColor="#003399";
}
function mo_bg(chk,obj){
if(chk==1){
obj.style.border="1px outset #CCFF99";
obj.style.backgroundColor="#CCFF99";
}
else{
obj.style.border="1px inset";
obj.style.backgroundColor="";
}
}
</script>
</head>

<body ondragstart="return false;">

<table border="1" width="100%" cellspacing="0" cellpadding="0">
<tr>
<th bgcolor="#C0C0C0"> </th>
<th align="center" bgcolor="#C0C0C0">A</th>
<th align="center" bgcolor="#C0C0C0">B</th>
<th align="center" bgcolor="#C0C0C0">C</th>
<th align="center" bgcolor="#C0C0C0">D</th>
<th align="center" bgcolor="#C0C0C0">E</th>
<th align="center" bgcolor="#C0C0C0">F</th>
</tr>
<tr>
<th align="center" bgcolor="#C0C0C0">1</th>
<td onMouseOver="mo_bg(1,this)" onMouseOut="mo_bg(0,this)" onMouseDown="SetStart(this)" onMouseUp="SetEnd(this)"> </td>
<td onMouseOver="mo_bg(1,this)" onMouseOut="mo_bg(0,this)" onMouseDown="SetStart(this)" onMouseUp="SetEnd(this)"> </td>
<td onMouseOver="mo_bg(1,this)" onMouseOut="mo_bg(0,this)" onMouseDown="SetStart(this)" onMouseUp="SetEnd(this)"> </td>
<td onMouseOver="mo_bg(1,this)" onMouseOut="mo_bg(0,this)" onMouseDown="SetStart(this)" onMouseUp="SetEnd(this)"> </td>
<td onMouseOver="mo_bg(1,this)" onMouseOut="mo_bg(0,this)" onMouseDown="SetStart(this)" onMouseUp="SetEnd(this)"> </td>
<td onMouseOver="mo_bg(1,this)" onMouseOut="mo_bg(0,this)" onMouseDown="SetStart(this)" onMouseUp="SetEnd(this)"> </td>
</tr>
<tr>
<th align="center" bgcolor="#C0C0C0">2</th>
<td onMouseOver="mo_bg(1,this)" onMouseOut="mo_bg(0,this)" onMouseDown="SetStart(this)" onMouseUp="SetEnd(this)"> </td>
<td onMouseOver="mo_bg(1,this)" onMouseOut="mo_bg(0,this)" onMouseDown="SetStart(this)" onMouseUp="SetEnd(this)"> </td>
<td onMouseOver="mo_bg(1,this)" onMouseOut="mo_bg(0,this)" onMouseDown="SetStart(this)" onMouseUp="SetEnd(this)"> </td>
<td onMouseOver="mo_bg(1,this)" onMouseOut="mo_bg(0,this)" onMouseDown="SetStart(this)" onMouseUp="SetEnd(this)"> </td>
<td onMouseOver="mo_bg(1,this)" onMouseOut="mo_bg(0,this)" onMouseDown="SetStart(this)" onMouseUp="SetEnd(this)"> </td>
<td onMouseOver="mo_bg(1,this)" onMouseOut="mo_bg(0,this)" onMouseDown="SetStart(this)" onMouseUp="SetEnd(this)"> </td>
</tr>
<tr>
<th align="center" bgcolor="#C0C0C0">3</th>
<td onMouseOver="mo_bg(1,this)" onMouseOut="mo_bg(0,this)" onMouseDown="SetStart(this)" onMouseUp="SetEnd(this)"> </td>
<td onMouseOver="mo_bg(1,this)" onMouseOut="mo_bg(0,this)" onMouseDown="SetStart(this)" onMouseUp="SetEnd(this)"> </td>
<td onMouseOver="mo_bg(1,this)" onMouseOut="mo_bg(0,this)" onMouseDown="SetStart(this)" onMouseUp="SetEnd(this)"> </td>
<td onMouseOver="mo_bg(1,this)" onMouseOut="mo_bg(0,this)" onMouseDown="SetStart(this)" onMouseUp="SetEnd(this)"> </td>
<td onMouseOver="mo_bg(1,this)" onMouseOut="mo_bg(0,this)" onMouseDown="SetStart(this)" onMouseUp="SetEnd(this)"> </td>
<td onMouseOver="mo_bg(1,this)" onMouseOut="mo_bg(0,this)" onMouseDown="SetStart(this)" onMouseUp="SetEnd(this)"> </td>
</tr>
<tr>
<th align="center" bgcolor="#C0C0C0">4</th>
<td onMouseOver="mo_bg(1,this)" onMouseOut="mo_bg(0,this)" onMouseDown="SetStart(this)" onMouseUp="SetEnd(this)"> </td>
<td onMouseOver="mo_bg(1,this)" onMouseOut="mo_bg(0,this)" onMouseDown="SetStart(this)" onMouseUp="SetEnd(this)"> </td>
<td onMouseOver="mo_bg(1,this)" onMouseOut="mo_bg(0,this)" onMouseDown="SetStart(this)" onMouseUp="SetEnd(this)"> </td>
<td onMouseOver="mo_bg(1,this)" onMouseOut="mo_bg(0,this)" onMouseDown="SetStart(this)" onMouseUp="SetEnd(this)"> </td>
<td onMouseOver="mo_bg(1,this)" onMouseOut="mo_bg(0,this)" onMouseDown="SetStart(this)" onMouseUp="SetEnd(this)"> </td>
<td onMouseOver="mo_bg(1,this)" onMouseOut="mo_bg(0,this)" onMouseDown="SetStart(this)" onMouseUp="SetEnd(this)"> </td>
</tr>
<tr>
<th align="center" bgcolor="#C0C0C0">5</th>
<td onMouseOver="mo_bg(1,this)" onMouseOut="mo_bg(0,this)" onMouseDown="SetStart(this)" onMouseUp="SetEnd(this)"> </td>
<td onMouseOver="mo_bg(1,this)" onMouseOut="mo_bg(0,this)" onMouseDown="SetStart(this)" onMouseUp="SetEnd(this)"> </td>
<td onMouseOver="mo_bg(1,this)" onMouseOut="mo_bg(0,this)" onMouseDown="SetStart(this)" onMouseUp="SetEnd(this)"> </td>
<td onMouseOver="mo_bg(1,this)" onMouseOut="mo_bg(0,this)" onMouseDown="SetStart(this)" onMouseUp="SetEnd(this)"> </td>
<td onMouseOver="mo_bg(1,this)" onMouseOut="mo_bg(0,this)" onMouseDown="SetStart(this)" onMouseUp="SetEnd(this)"> </td>
<td onMouseOver="mo_bg(1,this)" onMouseOut="mo_bg(0,this)" onMouseDown="SetStart(this)" onMouseUp="SetEnd(this)"> </td>
</tr>
<tr>
<th align="center" bgcolor="#C0C0C0">6</th>
<td onMouseOver="mo_bg(1,this)" onMouseOut="mo_bg(0,this)" onMouseDown="SetStart(this)" onMouseUp="SetEnd(this)"> </td>
<td onMouseOver="mo_bg(1,this)" onMouseOut="mo_bg(0,this)" onMouseDown="SetStart(this)" onMouseUp="SetEnd(this)"> </td>
<td onMouseOver="mo_bg(1,this)" onMouseOut="mo_bg(0,this)" onMouseDown="SetStart(this)" onMouseUp="SetEnd(this)"> </td>
<td onMouseOver="mo_bg(1,this)" onMouseOut="mo_bg(0,this)" onMouseDown="SetStart(this)" onMouseUp="SetEnd(this)"> </td>
<td onMouseOver="mo_bg(1,this)" onMouseOut="mo_bg(0,this)" onMouseDown="SetStart(this)" onMouseUp="SetEnd(this)"> </td>
<td onMouseOver="mo_bg(1,this)" onMouseOut="mo_bg(0,this)" onMouseDown="SetStart(this)" onMouseUp="SetEnd(this)"> </td>
</tr>
<tr>
<th align="center" bgcolor="#C0C0C0">7</th>
<td onMouseOver="mo_bg(1,this)" onMouseOut="mo_bg(0,this)" onMouseDown="SetStart(this)" onMouseUp="SetEnd(this)"> </td>
<td onMouseOver="mo_bg(1,this)" onMouseOut="mo_bg(0,this)" onMouseDown="SetStart(this)" onMouseUp="SetEnd(this)"> </td>
<td onMouseOver="mo_bg(1,this)" onMouseOut="mo_bg(0,this)" onMouseDown="SetStart(this)" onMouseUp="SetEnd(this)"> </td>
<td onMouseOver="mo_bg(1,this)" onMouseOut="mo_bg(0,this)" onMouseDown="SetStart(this)" onMouseUp="SetEnd(this)"> </td>
<td onMouseOver="mo_bg(1,this)" onMouseOut="mo_bg(0,this)" onMouseDown="SetStart(this)" onMouseUp="SetEnd(this)"> </td>
<td onMouseOver="mo_bg(1,this)" onMouseOut="mo_bg(0,this)" onMouseDown="SetStart(this)" onMouseUp="SetEnd(this)"> </td>
</tr>
<tr>
<th align="center" bgcolor="#C0C0C0">8</th>
<td onMouseOver="mo_bg(1,this)" onMouseOut="mo_bg(0,this)" onMouseDown="SetStart(this)" onMouseUp="SetEnd(this)"> </td>
<td onMouseOver="mo_bg(1,this)" onMouseOut="mo_bg(0,this)" onMouseDown="SetStart(this)" onMouseUp="SetEnd(this)"> </td>
<td onMouseOver="mo_bg(1,this)" onMouseOut="mo_bg(0,this)" onMouseDown="SetStart(this)" onMouseUp="SetEnd(this)"> </td>
<td onMouseOver="mo_bg(1,this)" onMouseOut="mo_bg(0,this)" onMouseDown="SetStart(this)" onMouseUp="SetEnd(this)"> </td>
<td onMouseOver="mo_bg(1,this)" onMouseOut="mo_bg(0,this)" onMouseDown="SetStart(this)" onMouseUp="SetEnd(this)"> </td>
<td onMouseOver="mo_bg(1,this)" onMouseOut="mo_bg(0,this)" onMouseDown="SetStart(this)" onMouseUp="SetEnd(this)"> </td>
</tr>
</table>

本篇文章發表於2002-05-23 00:00
目前尚無任何回覆
   

回覆
如要回應,請先登入.