折叠窗口和折叠所有其他窗口的代码

时间:2013-11-28 19:06:47

标签: javascript html function

功能折叠工作完美但我想先运行第二个功能先关闭所有其他元素,但我不知道出了什么问题;谢谢你的帮助!

编辑。第二个函数似乎不起作用或关闭已打开的表单。

编辑。谢谢大家的答案;我明天会有更多时间阅读并尝试一切。

functions.js:

function foldout(fold) {

    if (document.getElementById) {
        var fold = document.getElementById(fold).style;
            if (fold.display == "block") {
                fold.display = "none";
            } else {
                fold.display= "block";
            }
    return false;
    } else {
    return true;
    }
};
function foldall () {
    var foldall = document.getElementsByClassName('foldall');
        for(var i=0; i<foldall.length; i++) {
            var foldthis = foldall[i];
        if (foldthis.display == "block") { 
            foldthis.display = "none";
            }
        }
};

page.php文件:

<a href="#" onclick="foldall('foldall'); return foldout('fold');"> </a>
<form method="POST" style="display: none;" class ="foldall" id="fold">
</form

1 个答案:

答案 0 :(得分:0)

尝试从foldall功能调用foldout功能:

function foldall () {
    var foldall = document.getElementsByClassName('foldall');
        for(var i=0; i<foldall.length; i++) {
            var foldthis = foldall[i];
        if (foldthis.display == "block") { 
            foldthis.display = "none";
            }
        }
};

function foldout(fold) {
    foldall(); // collapse everything
    if (document.getElementById) {
        var fold = document.getElementById(fold).style;
        if (fold.display == "block") {
            fold.display = "none";
        } else {
            fold.display= "block";
        }
        return false;
    } else {
        return true;
    }
};

并且只从您的onclick处理程序中调用foldout:

<a href="#" onclick="foldout('fold');"></a>
<form method="POST" style="display: none;" class ="foldall" id="fold"></form>