我有以下代码行可以在Firefox,Chrome和Safari中正常运行,但不能在Internet Explorer 8中运行。

<a href="javascript:void(0);" onclick="showHide('reading','type_r','r');">Show me the example</a>


单击超链接后,该函数仅显示和隐藏div。

我在这里想念什么吗?

这是showHide函数:

function showHide(elementId,parentId,qtype) {

if (document.getElementById && !document.all) {

    var elementParent = document.getElementById(parentId);
    var element = document.getElementById(elementId);
    var upArrowId = 'up-arrow-'+qtype;
    var downArrowId = 'down-arrow-'+qtype;

    if(element.style.visibility == 'hidden'){

        elementParent.style.height = 'auto';
        element.style.visibility = 'visible';
        document.getElementById(upArrowId).style.visibility = 'visible';
        document.getElementById(downArrowId).style.visibility = 'hidden';
    }
    else if(element.style.visibility == 'visible'){
        element.style.visibility = 'hidden';
        elementParent.style.height = '50px';
        document.getElementById(upArrowId).style.visibility = 'hidden';
        document.getElementById(downArrowId).style.visibility = 'visible';
    }
}


}

谢谢。

最佳答案

!document.all从函数的代码执行中排除IE

关于javascript - Javascript onclick事件在Internet Explorer 8中不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2678189/

10-12 01:13