添付のコードを Firefox 拡張機能として実行しています。現在、拡張機能が行うことは、ブラウザが現在オンになっているページ (および iframe) の現在の場所を警告することだけです。何らかの理由で、場所を警告しようとすると、次の例外が発生する場合があります。
プロパティ href へのアクセスが拒否されました
残念ながら、コードが機能する正確なシナリオやページ、および例外がスローされる場所を理解できません。
誰もこれに遭遇しましたか?ありがとう !
これが browser.xul ファイルの内容です (HTML タグなし):
setTimeout(function() {
var appcontent = document.getElementById("appcontent");
if (appcontent) {
appcontent.addEventListener("DOMContentLoaded", function (aEvent) {
var doc = aEvent.originalTarget;
if (!(doc instanceof HTMLDocument)) {
// Validation.
return;
}
var sandbox = new Components.utils.Sandbox(doc.defaultView, {
'sandboxPrototype': doc.defaultView,
'wantXrays': true
});
sandbox.window = doc.defaultView;
sandbox.document = doc.defaultView.document;
sandbox.__proto__ = doc.defaultView;
sandbox.unsafeWindow = doc.defaultView.wrappedJSObject;
var strCode = "try { alert(window.location.href); } catch(e1) {alert(e1.message);}";
Components.utils.evalInSandbox(strCode, sandbox, "1.8");
}, true);
}
}, 1000);