我有一个弹出式窗口,称之为“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. 将值传递给页面
- 4. 如何通过Selenium Script c#将参数传递给Chrome扩展?
- 5. 如何在Chrome扩展页面加载页面后触发Javascript?
- 6. Chrome扩展:将DOM信息传递到背景页面/脚本
- 7. Chrome扩展 - 如何在页面加载
- 8. 如何将信息从Content_script传递到弹出页面? (Chrome扩展)
- 9. 如何将值从一个页面传递给其他页面?
- 10. 在Chrome扩展中传递数组
- 11. Chrome扩展开发:如何测试onTabReplaced?
- 12. 如何将一个Angular对象传递给Google Chrome扩展中的Javascript函数?
- 13. Chrome扩展程序开发:消息传递问题
- 14. Chrome扩展程序:将变量传递给弹出窗口
- 15. 将信息传递给网站的Chrome扩展
- 16. Chrome扩展将表单信息传递给PHP文件
- 17. javascript将值传递给弹出页面
- 18. Asp.Net:将页面值传递给UserControl
- 19. 如何将参数传递给页面?
- 20. 如何在Android中将值从一个页面传递给其他页面?
- 21. 发送Chrome扩展页
- 22. 如何将boundfield值传递给同一页面中的标签?
- 23. Chrome扩展程序 - 将数据从content_script.js传递回网页?
- 24. 如何将页面中的语言信息传递给页面?
- 25. 如何将页面中的值传递给PHP中的另一个页面
- 26. 如何动态发送Chrome扩展ID到消息传递的网页
- 27. JSON并将URL值作为参数传递 - Chrome扩展
- 28. 从chrome webstore安装变量时将变量传递给chrome扩展脚本
- 29. Chrome扩展未能在页面加载
- 30. 扩展中的Chrome图标页面