ツールバーのボタンをクリックするには、アクティブなタブの URL アドレスを取得する必要があります。
しかし
window.gBrowser.selectedBrowser.contentDocument
エラーになりCPOW
ます。
e10s アドオン内のアクティブなタブ URL の URL の場所を取得するにはどうすればよいですか?
ツールバーのボタンをクリックするには、アクティブなタブの URL アドレスを取得する必要があります。
しかし
window.gBrowser.selectedBrowser.contentDocument
エラーになりCPOW
ます。
e10s アドオン内のアクティブなタブ URL の URL の場所を取得するにはどうすればよいですか?
利用可能なオブジェクトとソース コードを調べてみると、アクティブなタブの URI を取得する場所は次のようになります。
現在からnsIURI
:
window.gBrowser.currentURI.spec
オブジェクトは、次のような URI を取得できる多くのプロパティを持つ をwindow.gBrowser.currentURI
返します。nsIURI
[nsIURI].spec //Returns a string representation of the URI.
[nsIURI].asciiSpec //The URI spec with an ASCII compatible encoding.
[nsIURI].specIgnoringRef //Returns a string representation of the URI without the ref
// (part after the #) portion.
nsIURI
現在選択されているタブの を次のように取得することもできます。
window.gBrowser.selectedBrowser._documentURI
からurlbar
:
もちろん、URL を から引き出すこともできますurlbar
。
window.document.getElementById('urlbar').value
発見window
:上記のすべては、現在アクティブなウィンドウに適切に
設定されていることを前提としています。window
たとえば、次のようにします。
// Add/remove a "/" to comment/un-comment the code appropriate for your add-on type.
/* Add-on SDK:
let window = require('sdk/window/utils').getMostRecentBrowserWindow();
//*/
//* Overlay and bootstrap (from almost any context/scope):
Components.utils.import("resource://gre/modules/Services.jsm"); //Services
let window=Services.wm.getMostRecentWindow("navigator:browser");
//*/