2011-06-04 148 views
2

我有這樣的代碼在一個自定義Firefox擴展的XUL文件:火狐loadURI不工作

<toolbarbutton label="Home" id="home-b" 
       class="toolbarbutton-1 custombutton" 
       oncommand="getBrowserWindow().gBrowser.loadURI('http://www.google.com');" /> 

這應該更改URL到google.com。但是,它不工作;當我點擊按鈕時沒有任何反應。

我做錯了什麼?

回答

3

通常,打開錯誤控制檯(Ctrl-Shift-J)並檢查代碼是否導致錯誤是一個好主意。錯誤消息應該給你一個關於錯誤的好主意。

也就是說,錯誤消息很可能是「getBrowserWindow不是函數」 - Firefox沒有定義這樣的函數。您的工具欄按鈕位於瀏覽器窗口中,因此您不需要任何特殊的東西來定位窗口。這應該這樣做:

window.gBrowser.loadURI('http://www.google.com'); 

請注意,這會將頁面加載到當前選項卡中。要打開新的標籤的使用:

window.gBrowser.loadOneTab('http://www.google.com'); 

該方法的其他參數見https://developer.mozilla.org/en/XUL/Method/loadOneTab