我有一个弹出式窗口,称之为“welcome.html”,我想我们该做的是,当用户选择一个文本,然后单击我的插件,它会使用一些页面信息,并打印回欢迎。 HTML。例如,网站标题以及用户选择的文本和网址。但是,我怎样才能将价值传递给welcome.html?谢谢。如何在Chrome扩展开发中将值传递给页面?
0
A
回答
1
我my extension做了很多的这个,因为它煤矿大量数据能够很容易地将其复制到剪贴板的用户。
既然你正在寻找少了很多数据,它甚至更简单。当您的弹出窗口被加载时,您可以调用以下函数来检索您需要的信息;
function getData(callback) {
chrome.tabs.getSelected(null, function (tab) {
var data = {
selection: '',
title: tab.title,
url: tab.url
};
/*
* We can't call content scripts on some pages and the process will get
* stuck if we try.
*/
if (tab.url.indexOf('chrome') === 0 ||
tab.url.indexOf('https://chrome.google.com/webstore') === 0) {
callback(data);
} else {
chrome.tabs.sendRequest(tab.id, {}, function (response) {
data.selection = response.selection;
callback(data);
});
}
});
}
确保您传入一个回调函数,一旦所有数据被提取,将会调用该函数;
getData(function (data) {
console.log('Title: ' + data.title);
console.log('URL: ' + data.url);
console.log('Selected Text: ' + data.selection);
// Display the data instead
});
正如您可能已经注意到getData
函数发送请求到选定的选项卡。一个content script将需要的页面将被注入为了这个工作,所以要确保你已经调用getData
之前正确或injected it programmatically配置您的清单,否则将无法正常工作。需要注入的脚本应该类似于以下内容;
(function() {
chrome.extension.onRequest.addListener(function (request, sender,
sendResponse) {
sendResponse({
selection: window.getSelection().toString()
});
});
})();
这只是返回当前选定的文本。一个值得关注的是,这个数据查找可能导致轻微的停顿,而弹出窗口渲染,但你应该测试这个自己和自己做个实验,但也有solutions。
这应该涵盖所有你需要知道的这么好运气,让我知道如果你需要任何进一步的帮助我所知,如果你是新来的Chrome扩展程序,这可能会稍微压倒。
相关问题
- 1. 使用chrome扩展将页面的html传递给脚本
- 2. 将变量传递给chrome.tabs.onUpdated.addListener() - Chrome扩展
- 3. 简单吗?将变量从Chrome扩展页传递给PHP页面?
- 4. 如何将AJAX页面值传递给
- 5. 将值传递给页面
- 6. 将来自Chrome扩展程序的消息传递给网页
- 7. 尽快将变量传递给Chrome扩展的网页
- 8. 如何通过Selenium Script c#将参数传递给Chrome扩展?
- 9. 如何在Chrome扩展页面加载页面后触发Javascript?
- 10. Chrome扩展:将DOM信息传递到背景页面/脚本
- 11. Chrome扩展开发:在后台页面中打开页面时的通知
- 12. 开发Chrome扩展
- 13. Chrome扩展 - 如何在页面加载
- 14. 如何将信息从Content_script传递到弹出页面? (Chrome扩展)
- 15. 如何将值从一个页面传递给其他页面?
- 16. 在Chrome扩展中传递数组
- 17. 将Chrome扩展程序中的变量传递给打开的选项卡
- 18. 如何将对象的构造函数传递给Chrome扩展中的另一个页面
- 19. 如何从网页打开Chrome扩展选项页面?
- 20. 如何将消息从Chrome传递给开发人员?
- 21. Chrome扩展:如何从一个页面
- 22. Chrome扩展开发:如何测试onTabReplaced?
- 23. 如何将一个Angular对象传递给Google Chrome扩展中的Javascript函数?
- 24. 如何将我的应用中的url参数传递给Chrome扩展?
- 25. Chrome扩展程序开发:消息传递问题
- 26. 如何将参数传递给页面?
- 27. Chrome扩展程序:将变量传递给弹出窗口
- 28. Chrome扩展将表单信息传递给PHP文件
- 29. 将信息传递给网站的Chrome扩展
- 30. 有没有办法将参数传递给Chrome扩展?