javascript - Firefox page-mod - "contentScript":null -
i'm doing page-mod tutorial.
here's code: main.js
var tag = 'p' var info = require('sdk/self').data var pagemod = require('sdk/page-mod') pagemod.pagemod({ include: '*', contentscriptfile: data.url('element-getter.js'), onattach: attachhandler }) function attachhandler(worker) { console.log('worker ', worker) worker.port.emit('getelements', tag) worker.port.on('gotcontent', function(content) { console.log('received content ', content) }) } element-getter.js:
self.port.on('getelements', function(tag) { console.log('received tag ', tag) var elements = document.getelementsbytagname(tag) console.log('found elements ', elements) (var i=0; i< elements.length; i++) { self.port.emit('gotcontent', elements[i].innerhtml) }) }) (also available in github.com/findjashua/pgmod)
it logs first message on terminal, , none on browser console. message, can see thinks contentscript null. doing wrong here?
here gets logged on terminal:
console.error: pgmod: message: syntaxerror: syntax error console.log: pgmod: worker constructor {"contentscriptfile":"resource://jid1-kkjpd9s1yzxe9g-at-jetpack/pgmod/data/element-getter.js","contentscript":null,"port":{}}
sorry, got distracted syntaxerror. syntaxerror, not due encoding.
from repo:
self.port.on('getelements', function(tag) { console.log('received tag ', tag) var elements = document.getelementsbytagname(tag) console.log('found elements ', elements) (var i=0; i< elements.length; i++) { self.port.emit('gotcontent', elements[i].innerhtml) }) // <-- trailing parenthesis, left-over having .foreach in there before }) after fixing removing trailing parenthesis, code works me.
javascript firefox firefox-addon firefox-addon-sdk
No comments:
Post a Comment