How do I prevent Firefox SDK content scripts from loading multiple times? The docs and a bug report I found suggest the contentScriptWhen
property should limit the number of times my content scripts are executed, yet I see them running anywhere from twice to 15 times in a page load.
Here's what's in my main.js:
var data = require("sdk/self").data;
var tabs = require('sdk/tabs');
var pageMod = require('sdk/page-mod');
pageMod.PageMod({
include: ['*'],
contentScriptWhen: "ready",
contentScriptFile: [data.url("extBootstrapper.js"), data.url("extContent.js")],
onAttach: function(worker) {
//handlers for AJAX and changing preferences, etc
...
});
I've tried controlling this behavior with the contentScriptWhen
property, as well as by having an 'isLoaded' flag on each script - neither prevents the scripts from executing multiple times.