XUL事件:新页面加载/获取页面内容

时间:2009-06-19 14:06:39

标签: firefox xul

当“页面开始在浏览器中加载”时,如何捕获事件?

如何访问HTML并使用XUL进行操作?

3 个答案:

答案 0 :(得分:2)

我有同样的问题。我找到了文档,但无法在Firefox 3.6.12中运行代码。我做了一些更改并设法使其正常工作:

this._loadHandler = function(event) {

var myDomain = 'www.yahoo.com';

let doc = event.originalTarget;
//alert(doc.defaultView.location.href);
if (doc instanceof HTMLDocument) {

    var re = new RegExp(myDomain);
    if (doc.defaultView.location.href.match(re)) {
        alert("Successful match");
    }

}};


gBrowser.addEventListener("load", this._loadHandler, true);

这是从以下示例中修改的:https://developer.mozilla.org/en/XUL_School/Intercepting_Page_Loads

HTH

答案 1 :(得分:1)

Mozilla网站上已有大量documentation and sample code for this very task。你的问题虽然很模糊,但我可能会将你链接到错误的页面。

答案 2 :(得分:1)

这主要来自mozilla网站

window.addEventListener("load", function() { myExtension.init(); }, false);

var myExtension = {

    init: function() {
    var appcontent = document.getElementById("appcontent");  
    if(appcontent)
        appcontent.addEventListener("DOMContentLoaded", myExtension.onPageLoad, true);  
    },

    onPageLoad: function(event) {
        var doc = event.originalTarget;
        var myDiv = doc.getElementById("myDiv");
        //do something interesting with it
    }
}

玩得开心