ie8中的javascript hide / show失败

时间:2010-07-16 14:05:45

标签: javascript css internet-explorer-8

我有以下javascript

function hide(id)
{
    var ele = document.getElementById(id);
    if ((ele.style.display == 'none') || (ele.style.display == '')) {
    try{
     ele.style.display = 'table-row';
     }
     catch (e)
     {
     ele.style.display='block';
     }}
    else {ele.style.display = 'none';}
}

在ie7,chrome,ff中有效,但在ie8

中失败

即使它在chrome或ff中失败,我也必须让它在ie8中工作。

我认为问题是'ele.style.display = 'table-row'

任何想法?提前谢谢

2 个答案:

答案 0 :(得分:0)

不确定您在IE8中遇到的故障,但您可能会更改if这个:

ele.style.display == ''

到此:

ele.style.display == undefined

答案 1 :(得分:-1)

你为什么不用:

function toggle(id) {
  var el = document.getElementById(id);
  el.style.display = (el.style.display == "none" || el.style.display == "") ? "block" : "none";
}