JavaScript onclick条件表单元格

时间:2012-10-15 08:48:04

标签: javascript html cell

我最近有一个problem,我已经解决了。

但是,我现在有一个不同的问题。我希望代码只切换第2列和第3列中单元格的可见性。

我不知道如何处理这个问题,我对JavaScript的了解很少。

此外,将第2行和第3行中的所有单元格自动切换为不可见是不错的,但不是必需的。

修改:

为了方便起见,我只复制了解决问题的问题。

function tableclick(e) 
{
    e = e || window.event;
    var target = e.target || e.srcElement;
    while(target != this && (!target.tagName || target.tagName != "TD")) target = target.parentNode;
    if( target != this) 
    {
        toggleVis(target)
    }
}

function toggleVis(obj) 
{
    if ( obj.style.fontSize != "0px" ) 
    {
        obj.style.fontSize = "0px"
    }
    else 
    {
       obj.style.fontSize = "16px"
    }
}

2 个答案:

答案 0 :(得分:1)

function tableclick(e) 
{
    e = e || window.event;
    var target = e.target || e.srcElement;
    while(target != this && (!target.tagName || target.tagName != "TD")) target = target.parentNode;
    if( target != this && (target.cellIndex == 1 || target.cellIndex == 2)) 
    {
        toggleVis(target)
    }
}

答案 1 :(得分:0)

我通过做一些我从未想过会实际工作的东西来解决它,但是你有它......

function tableclick(e) 
{
    var ColNum=1;
    if(navigator.userAgent.indexOf("MSIE")!=-1) {
        if(event.srcElement.tagName=="TD") {
            ColNum+=event.srcElement.cellIndex;
            }
        }
    else {    
        if (e.target == "[object HTMLTableCellElement]") {
             ColNum+=e.target.cellIndex;
             }
        }
    if (ColNum == 2 || ColNum == 3)
    {    
    e = e || window.event;
    var target = e.target || e.srcElement;
    while(target != this && (!target.tagName || target.tagName != "TD")) target = target.parentNode;
    if( target != this) 
    {
        toggleVis(target)
    }
    }
}