Как передать данные ContentScript в глобальную переменную модуля в JavaScript? - PullRequest
4 голосов
/ 09 марта 2011

Я работал над проектом расширения Firefox, и теперь я застрял на этом,

var abc = 123;

var pageMod = require("page-mod");
pageMod.PageMod({
  include: "*",
  contentScriptWhen: 'ready',
  contentScript:  'var newabc = 456;',
});

, где abc - глобальная переменная, а newabc - переменная внутри contentScript.

Как мне сделать abc = newabc?

Спасибо !!

1 Ответ

4 голосов
/ 11 марта 2011

Для Addon-SDK v1.0b3 API PageMod :

var abc = 123;

var pageMod = require("page-mod");
pageMod.PageMod({
  include: "*",
  contentScriptWhen: 'ready',
  contentScript:  'var newabc = 456;postMessage(newabc);',
  onAttach: function onAttach(worker) {
    worker.on('message', function(newabc) {
      abc = newabc;
    });
  }
});
...