javascript:要调整窗口大小,但还要检查其是否打开或关闭

javascript:要调整窗口大小,但还要检查其是否打开或关闭,javascript,resize,window,Javascript,Resize,Window,为什么这不起作用 //我删除了“for循环”一秒钟,然后脚本做了一些事情,循环出了什么问题// var openWindows= new Array[50](); function resize(x){ //将布尔值更改为var var open=false for(var i = 0; i < openWindows.length; i++){ if(openWindows[i] == x){ open = true; openWindows[i] = "";

为什么这不起作用


//我删除了“for循环”一秒钟,然后脚本做了一些事情,循环出了什么问题//

var openWindows= new Array[50]();

function resize(x){
//将布尔值更改为var var open=false

 for(var i = 0; i < openWindows.length; i++){
  if(openWindows[i] == x){
   open = true;
   openWindows[i] = "";
  }
 }

 if(open == false){
  for(var i = 0; i < openWindows.length; i++){
   if(openWindows[i] == ""){
    openWindows[i] = x;
    break;
   }
  }

  var t = setTimeout("document.getElementById('" + x + "').style.height='200px'",20);
  var t = setTimeout("document.getElementById('" + x + "').style.height='220px'",40);
  var t = setTimeout("document.getElementById('" + x + "').style.height='240px'",60);
  var t = setTimeout("document.getElementById('" + x + "').style.height='260px'",80);
  var t = setTimeout("document.getElementById('" + x + "').style.height='280px'",100);
  var t = setTimeout("document.getElementById('" + x + "').style.height='300px'",120);
  var t = setTimeout("document.getElementById('" + x + "').style.height='320px'",140);
  var t = setTimeout("document.getElementById('" + x + "').style.height='340px'",160);
  var t = setTimeout("document.getElementById('" + x + "').style.height='360px'",180);
  var t = setTimeout("document.getElementById('" + x + "').style.height='380px'",200);
  var t = setTimeout("document.getElementById('" + x + "').style.height='400px'",220);
  var t = setTimeout("document.getElementById('" + x + "').style.height='420px'",240);
  var t = setTimeout("document.getElementById('" + x + "').style.height='440px'",260);
  var t = setTimeout("document.getElementById('" + x + "').style.height='460px'",280);
  var t = setTimeout("document.getElementById('" + x + "').style.height='480px'",300);
  var t = setTimeout("document.getElementById('" + x + "').style.height='500px'",320);
  var t = setTimeout("document.getElementById('" + x + "').style.height='520px'",340);
  var t = setTimeout("document.getElementById('" + x + "').style.height='540px'",360);
  var t = setTimeout("document.getElementById('" + x + "').style.height='560px'",380);
  var t = setTimeout("document.getElementById('" + x + "').style.height='580px'",400);
 }else{
  var t = setTimeout("document.getElementById('" + x + "').style.height='560px'",40);
  var t = setTimeout("document.getElementById('" + x + "').style.height='540px'",60);
  var t = setTimeout("document.getElementById('" + x + "').style.height='520px'",80);
  var t = setTimeout("document.getElementById('" + x + "').style.height='500px'",100);
  var t = setTimeout("document.getElementById('" + x + "').style.height='480px'",120);
  var t = setTimeout("document.getElementById('" + x + "').style.height='460px'",140);
  var t = setTimeout("document.getElementById('" + x + "').style.height='440px'",160);
  var t = setTimeout("document.getElementById('" + x + "').style.height='420px'",180);
  var t = setTimeout("document.getElementById('" + x + "').style.height='400px'",200);
  var t = setTimeout("document.getElementById('" + x + "').style.height='380px'",220);
  var t = setTimeout("document.getElementById('" + x + "').style.height='360px'",240);
  var t = setTimeout("document.getElementById('" + x + "').style.height='340px'",160);
  var t = setTimeout("document.getElementById('" + x + "').style.height='320px'",260);
  var t = setTimeout("document.getElementById('" + x + "').style.height='300px'",280);
  var t = setTimeout("document.getElementById('" + x + "').style.height='280px'",300);
  var t = setTimeout("document.getElementById('" + x + "').style.height='260px'",320);
  var t = setTimeout("document.getElementById('" + x + "').style.height='240px'",340);
  var t = setTimeout("document.getElementById('" + x + "').style.height='220px'",360);
  var t = setTimeout("document.getElementById('" + x + "').style.height='200px'",380);
  var t = setTimeout("document.getElementById('" + x + "').style.height='180px'",400);
 }
}
for(var i=0;i
您的代码应该做什么还不够清楚,但我可以看到一些问题

第一行有语法错误:

var openWindows= new Array[50]();  // Should be `Array(50)`
Javascript是一种动态类型化语言,声明变量时不需要断言类型:

 boolean open = false;

 // Should be
 var open = false;
对于每个变量声明,只能使用
var
关键字一次。在本例中,每次声明
var t=window.setTimeout(…)您正在重新声明变量。事实上,您根本不需要
var t=

此外,您还可以使用
.closed
属性检查窗口是否关闭:

if (windowVar.closed == true) { /* ... */ };

您的代码应该做什么还不够清楚,但我可以看到一些问题

第一行有语法错误:

var openWindows= new Array[50]();  // Should be `Array(50)`
Javascript是一种动态类型化语言,声明变量时不需要断言类型:

 boolean open = false;

 // Should be
 var open = false;
对于每个变量声明,只能使用
var
关键字一次。在本例中,每次声明
var t=window.setTimeout(…)您正在重新声明变量。事实上,您根本不需要
var t=

此外,您还可以使用
.closed
属性检查窗口是否关闭:

if (windowVar.closed == true) { /* ... */ };

因为它很难看(对主观的负面评论表示抱歉)因为它很难看。:)(对主观的负面评论表示抱歉)它不像一扇窗户。这更像是一个演员扮演一个窗口。将布尔值更改为var,但脚本仍然不起作用:(我删除了“for循环”一秒钟,然后脚本做了一些事情,循环有什么问题?@Jay,循环在语法上似乎没有任何问题。我现在看到了错误。我以错误的方式声明了数组:P var openstaandeVensters=new array[100];它不像一个窗口。它更像是一个充当窗口的div。将boolean更改为var,但脚本仍然不起作用:(我删除了“for循环”一秒钟,然后脚本做了一些事情,什么