1

添付のコードを 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);
4

0 に答える 0