我在調試時非常可怕,並且完全不知道爲什麼這樣做不起作用。這是我的情況:打開幾個選項卡,然後在所述選項卡上執行操作
我寫了一個函數打開多個鏈接到標籤中,然後對它們執行一個非常簡單的操作。它沒有像我預期的那樣工作,所以我重寫了它,只是打開一個鏈接到一個標籤中,這個標籤工作正常。這是我(簡化):
links=arrayFromGetElemenetsCall;
if(condition){
theNewWindow=window.open(links[0]);
}
setTimeout("myFunction(theNewWindow)",5000);
}
function myFuntion(bob){
bob.doStuff();
}
當我試圖打開多個標籤和窗口引用保存到供將來使用我得到一個錯誤的數組。這是多窗口的簡化代碼:
var theArray=new Array();
links=arrayFromGetElemenetsCall;
for(conditions){
if(condition){
theArray[i]=window.open(links[i]);
}
}
setTimeout("myFunction(theArray[0])",5000);}
function myFuntion(bob){
bob.doStuff();
}
哪一個不起作用。當且僅當它被寫入setTimeout函數時,我會得到「Error:theArray is not defined」。我試過傳遞整個數組,然後在myFunction中循環,以及在bob [0]上調用.doStuff()。
這是什麼,我沒有看到這裏?
謝謝,就是這樣。 – baiano 2010-02-04 04:52:47