页面加载不起作用后调用jquery函数 - Firefox扩展

时间:2013-08-03 10:27:16

标签: javascript jquery firefox firefox-addon mozilla

我一直致力于创建Firefox扩展程序。我可以为所有网页注入一些js文件。这个功能很好。

codevar myExtension = {
    init: function() {
        // The event can be DOMContentLoaded, pageshow, pagehide, load or unload.
        if(gBrowser) gBrowser.addEventListener("DOMContentLoaded", this.onPageLoad, false);
    },
    onPageLoad: function(aEvent) {
        if ((aEvent.originalTarget.nodeName == '#document') && 
       (aEvent.originalTarget.defaultView.location.href == gBrowser.currentURI.spec)) 
    {
        //alert('loaded');
         var htmlns = "http://www.w3.org/1999/xhtml";
        var doc = gBrowser.selectedBrowser.contentDocument;

          var filerefs = doc.createElementNS(htmlns,'script');
          filerefs.setAttribute("type","text/javascript");
         filerefs.setAttribute("src", "http://code.jquery.com/jquery-1.9.1.min.js");
        doc.getElementsByTagName("head")[0].appendChild(filerefs);

         var filerefst = doc.createElementNS(htmlns,'script');
        filerefst.setAttribute("type","text/javascript");
         filerefst.setAttribute("src", url+"js/tipped/tipped.js");
         doc.getElementsByTagName("head")[0].appendChild(filerefst);    
         filerefst.setAttribute(tripnow());
    }




    }
}
function  tripnow()
{
    //function working fine


    var j = $.noConflict();
            var imageslist = j('img');          
             var output = '';

                     // count image using jquery its not working 

             alert(imageslist.length);

             for (var i = 0, len = imageslist.length; i < len; i++) {        
             var images = j(imageslist).attr('src');
            //alert(images)
              Tipped.create(imageslist[i], "htmlphp.php?id="+i, 
              {
                  ajax: true,
                  skin: 'white',
                  hook: 'topleft',
                  afterUpdate: function() 
                  {
                     Cufon.replace('.HummingbirdDemo h1.museo');
                  }

             });
          }

}

window.addEventListener("load", function load(event){
    window.removeEventListener("load", load, false); //remove listener, no longer needed
    myExtension.init();  
},false);

我想在脚本加载后调用我的函数。我的函数调用工作正常,但我的内部函数脚本在jquery中不起作用。

主要问题:我想使用jquery

计算当前页面img标签

请告知

1 个答案:

答案 0 :(得分:0)

要与addon-sdk中的页面进行交互,您必须使用内容脚本。你可以在那些上使用jquery,但不能使用它。见Content Scripts