所以,我有一个chrome扩展,可以为网站做各种事情。 我想做的是重写它,使其更清洁,更相关,所以我开始了。我有什么内容脚本,它是'infuse.js',它将另一个文件t3.js注入网站。
我的问题是 - 有没有办法将数据从localStorage传递到t3.js?
我有sendRequest和响应设置,所以infuse.js可以读取存储,但是,如果我尝试从t3.js执行sendRequest,它显然是未定义的,因为它不是内容脚本,因此无法访问API。
如果您知道任何事情,请告诉我。
答案 0 :(得分:2)
在文档中有一些内容...... http://code.google.com/chrome/extensions/content_scripts.html#host-page-communication
另外,如果你想在注入时只将一些东西传递给t3.js,那么在注入t3.js之前你可以注入一些设置一些值的js。
settings={1:"something'set'",2:["blek",1,2,3]}; //Youd get these from localStorage or something
head = document.getElementsByTagName('head')[0],
script = document.createElement('script');
script[script.innerText ? 'innerText' : 'textContent'] = 'var settings=' + JSON.stringify(settings)+ ';';
head.appendChild(script);
//Then inject t3.js