2015-11-27 90 views
1

我有一個像遺漏的類型錯誤:無法讀取未定義的屬性「頂」(popupWindow.top.close();)

if(typeof json.content[0].redirects != 'undefined'){ 
    if(json.content[0].redirects != ''){ 
     popupWindow = window.open(json.content[0].redirects, "Window2", "width=1000,height=800,scrollbars=yes,left=200"); 
     var p = window.parent.document; 
     p.onclick = function(){ 
      popupWindow.top.close(); 
     }; 
    } 
} 

一個腳本,它完美的作品在localhost
但在現場彈出窗口出現,但沒有數據並顯示錯誤:

'Uncaught TypeError: Cannot read property 'top' of undefined'.

爲什麼會出現這種情況?

+0

預計結果關閉''top' window'? – guest271314

+0

我不確定,但試試這個'popupWindow.offset()。top.close()' – abhishekkannojia

+0

@ guest271314:yes.it在localhost中關閉,但是這個代碼放到服務器中並不起作用 – anjana

回答

-1

嗨,你可以檢查popupWindow被觸發這樣的:

if (popupWindow.length) { 
popupWindow.top.close(); 
    //...continue to close popup windows 
}else{ 
    //do something 
} 
+0

爲什麼投票下來? Zzz –

+1

我不是那個投票給你但是FYI的人,如果popupWindow沒有被初始化,這個方法會拋出一個錯誤。更好的方法是檢查typeof popupWindow!==「未定義」 – danbahrami

相關問題