var overcolor='#cccccc';
var outcolor='#f2f3f7';
var clkcolor='deeppink';
var pobj=null;
for (var i=0;i<phx.rows.length;i++){
for(var j=0;j<phx.rows[i].cells.length;j++){
phx.rows[i].cells[j].onmouseover=function(){
if(pobj!=this){
this.bgcolor=overcolor;}}
phx.rows[i].cells[j].onmouseout=function(){
if(pobj!=this){
this.bgcolor=outcolor;}}
phx.rows[i].cells[j].onclick=function(){
pobj=this;
init();
pobj.bgcolor=clkcolor;}
}
}
function init(){
for (var i=0;i<phx.rows.length;i++){
for(var j=0;j<phx.rows[i].cells.length;j++){
phx.rows[i].cells[j].bgcolor=outcolor;
}
}
}
init();
[ctrl+a 全选 注:如需引入外部js需刷新才能执行]
以上代码可以实现鼠标移动到单元格上,单元格变色,现在我想实现鼠标移动到某个单元格上后,整个列都变色不知道可以不可以实现呢?
body {
font: normal 12px auto "trebuchet ms", verdana, arial, helvetica, sans-serif;
color: #4f6b72;
background: #e6eae9;
}
.mytable {
width: 80%;
padding: 0;
margin: 0;
}
.mytable td {
border-bottom: 1px solid #c1dad7;
background: #fff;
font-size:12px;
padding: 6px 6px 6px 0px;
align:center;
color: #4f6b72;
}
td.alt {
background: #f5fafa;
text-align:center;
color: #797268;
}
td.baialt {
background: #ffffff;
text-align:center;
color: #000;
}
td.spec {
border-top: 0;
background: #fff ;
text-align:center;
font: 12px "trebuchet ms", verdana, arial, helvetica, sans-serif;
}
td.specalt {
border-top: 0;
background: #f5fafa ;
text-align:center;
font: 12px "trebuchet ms", verdana, arial, helvetica, sans-serif;
color: #797268;
}
function senfe(sid){
var tds=sid.getelementsbytagname("td")
for(var i=0;i<tds.length;i++){
if(tds[i].classname=='alt'){
tds[i].classname="baialt";
}else{
tds[i].classname="alt";
}
}
}
当鼠标经过时希望实现隔列变色(最好是反色) ,效果示例如下:
[ctrl+a 全选 注:如需引入外部js需刷新才能执行]
代码已经帖上来,现在鼠标移动到单元格变色
phx.rows[i].cells[j].onmouseover=function()
{
if(pobj!=this){
this.bgcolor=overcolor;}
}
以及移出单元格变色
phx.rows[i].cells[j].onmouseout=function()
{
if(pobj!=this){
this.bgcolor=outcolor;}
}
都已经解决·
剩下的问题是phx.rows[i].cells[j].onclick也就是我单击了表格的某个单元格后,希望这个单元格所在的那一列都可以变色,请问如何处理呢?
var overcolor='#cccccc';
var outcolor='#f2f3f7';
var clkcolor='deeppink';
var pobj=null;
for (var i=0;i<phx.rows.length;i++){
for(var j=0;j<phx.rows[i].cells.length;j++){
phx.rows[i].cells[j].onmouseover=function(){
if(pobj!=this)
for(var k=0;k<phx.rows.length;k++){
phx.rows[k].cells[event.srcelement.cellindex].bgcolor=overcolor;
}
}
phx.rows[i].cells[j].onmouseout=function(){
if(pobj!=this)
for(var k=0;k<phx.rows.length;k++){
phx.rows[k].cells[event.srcelement.cellindex].bgcolor=outcolor;
}
}
phx.rows[i].cells[j].onclick=function(){
pobj=this;
init();
for(var k=0;k<phx.rows.length;k++){
phx.rows[k].cells[event.srcelement.cellindex].bgcolor=clkcolor;
}
}
}
}
function init(){
for (var i=0;i<phx.rows.length;i++){
for(var j=0;j<phx.rows[i].cells.length;j++){
phx.rows[i].cells[j].bgcolor=outcolor;
}
}
}
init();
[ctrl+a 全选 注:如需引入外部js需刷新才能执行]