我已经挖掘了一段时间的其他答案,但是没有找到任何我认为我正在寻找的东西,所以是我的第一个stackoverflow问题的时候了! (温柔,我在3周前开始学习js。)
这里的tl;博士是我正在寻找从页面上的活动选项卡中获取DOM元素(主要是innerHTML),当我的弹出窗口打开时,使用该元素以特定方式填充链接。
例如,以Twitter为例,我想抓住最热门的推文永久链接,并将我的分机下拉列表的一部分提供给它的链接。
我看到它的工作方式是使用消息传递(引用here和here),但有些事情正在逃避我。
我在上面的例子中最好的猜测,并在我的主页content.js
中挖掘了其他一些脚本。 (我已使用document.getElementById
设置var previousVariable
):
chrome.runtime.onMessage.addListener(function (msg, sender, sendResponse) {
if (msg.text === 'report_back') {
sendResponse(previousVariable.href);
}
});
然后我的popup.js
中的以下内容:
console.log("This is step one!");
function doStuffWithDom(domContent) {
console.log('Did it work? ' + domContent);
}
// When the browser-action button is clicked...
chrome.browserAction.onClicked.addListener(function (tab) {
chrome.tabs.sendMessage(tab.id, {text: 'report_back'}, doStuffWithDom);
});