为什么这个功能不起作用?

Dav*_*819 1 html javascript scope

当我单击"测试"框架调整大小但当我再次单击它时它不会调整大小恢复其原始大小

function dropdownResize(){

var down = 0;

        if(down == 0){
                parent.document.getElementById('frameMain').rows = '84,84,*';
                down = 1;
            }
        else{
                parent.document.getElementById('frameMain').rows = '84,30,*';
                down = 0;
            }


    }
Run Code Online (Sandbox Code Playgroud)

<a onclick="dropdownResize()"> test</a>
Run Code Online (Sandbox Code Playgroud)

Aro*_*eel 10

它不起作用,因为它down在函数范围内定义的dropdownResize().调用该函数时,down每次都重置为0.

您应该做什么:( 请注意,这是您问题的直接答案,您应该了解有关变量范围的更多信息,以便尽可能地防止全局变量)

var down = 0;
function dropdownResize(){
        if(down == 0){
                parent.document.getElementById('frameMain').rows = '84,84,*';
                down = 1;
            }
        else{
                parent.document.getElementById('frameMain').rows = '84,30,*';
                down = 0;
            }
    }
Run Code Online (Sandbox Code Playgroud)