2011-01-11 290 views
3

我在我的XUL應用程序下面的腳本:什麼會導致window.open返回「undefined」?

MyClass = function() { 
this.go = function() { 
    try { 
    var scanWindow = window.open('chrome://test/content/scanWindow.xul','Scan','chrome, width=850, height=150, centerscreen'); 
    dump("scanWindow = " + scanWindow); // console output in Xul 
    } catch(err) { 
    dump("ERROR: " + err); // console output in Xul 
    } 
    } 
} 

當我把這種方法將打印

scanWindow =未定義

什麼可以導致任何提示?

+0

我會說這是沒有定義的,因爲你從來沒有定義它。你從goWindow切換到scanWindow。 – 2011-01-11 17:44:28

+0

@JacobM對不起,我在這裏糾正。在我的代碼中,這是正確的。 – 2011-01-11 17:46:09

回答

-1

看出:是什麼導致這種行爲是重新寫的window.open方法,並返回任何結果。這是在這段代碼的另一部分完成的。

0
var goWindow = window.open('chrome://test/content/go.xul','Go','chrome, width=850, height=150, centerscreen'); 
dump("scanWindow = " + scanWindow); // console output in Xul  

您的來電轉儲應該

dump("scanWindow = " + goWindow); // console output in Xul  
+0

對不起,我在這裏寫錯了,但在我的代碼是正確的,這不是這個問題..(我更新了問題,謝謝!) – 2011-01-11 17:44:12

+0

你可以嘗試轉儲(窗口),看看是否定義了窗口? – Damp 2011-01-11 18:22:35

1

我不認爲你可以在第三個參數中有空格打開。

錯誤:

var scanWindow = window.open('chrome://test/content/scanWindow.xul','Scan','**chrome, width=850, height=150, centerscreen**');

正確:

var scanWindow = window.open('chrome://test/content/scanWindow.xul','Scan','**chrome,width=850,height=150,centerscreen**');