我试图拦截一个站点调用窗口和来自firefox插件的屏幕对象,它们的宽度和高度属性并返回我自己的值。
我一直在尝试使用观察者
const os = Components.classes["@mozilla.org/observer-service;1"].getService(Components.interfaces.nsIObserverService);
os.addObserver({
observe : function(subject, topic, data) {
if (subject instanceof Ci.nsIDOMWindow && topic == 'content-document-global-created') {
subject.wrappedJSObject.myfunction = function(){
// Do stuff
}
}
}
}, 'content-document-global-created', false);
这允许我覆盖普通的javascript方法,但我似乎无法改变屏幕或窗口属性。 pagemod是否能够使用内容脚本对其进行修改,以便网站读取插件中指定的值?
答案 0 :(得分:0)
你会这样做:
subject.wrappedJSObject.screen.__defineGetter__("width", function() { return myWidth });
我不确定willma指出的时间,但这就是代码的样子。