2014-11-05 56 views
1

在我的插件中,我想从我的面板图像到页面。所有的工作都很好,但是当我尝试在新标签中制作相同的图片时,也会在旧标签中插入图片。请解释我,我如何从旧标签中删除监听器?如何删除Firefox SDK插件中的监听器?

var tabIs; 
var thisTab; 

tabs.on("ready", function(tab) { 
    tabIs = tab.id; 
    tab.on("load", function(tab) { 
     tabIs += 1; 
    }); 
}); 

function handleClick() { 
    function insertPic(pic) { 
     var abs_url = self.data.url(pic); 
     worker.port.emit("to-page", abs_url); 
    } 

    if (thisTab == tabIs) { 
     panel.show(); 
     panel.port.on("from-panel", insertPic); 
    } else { 
     thisTab = tabIs; 
     panel.show(); 
     var worker = tabs.activeTab.attach({ 
      contentScriptFile: [self.data.url("jquery-2.1.1.min.js"), self.data.url("page.js")] 
     }); 
     panel.port.on("from-panel", insertPic); 
    } 
} 

回答

2

您需要调用worker上的destroy()方法,请参见the docs for more info

+0

也就是说,我需要摧毁'工人'?我试图从旧标签中删除监听器,在这里我错了。谢谢! – 2014-11-06 14:20:48