gpt4 book ai didi

google-chrome - 为 GET 查询编写谷歌浏览器扩展

转载 作者:行者123 更新时间:2023-12-04 06:57:07 26 4
gpt4 key购买 nike

我正在尝试编写一个 Google chrome 扩展程序,以便我可以突出显示出现在任何网站上的文本并在另一个网站上执行 GET 查询搜索。它将在新选项卡中打开查询。

例如,如果我突出显示文本“google chrome”并右键单击以激活 chrome 扩展,它将打开 http://example.com/index.php?q=google%20chrome在新选项卡中。

这样做的最佳方法是什么?

最佳答案

要从您访问的选项卡中获取选定的文本,您需要使用 Extension Messaging这样做。

例如,让我们做一个简单的 Google 搜索扩展,在您的内容脚本中,您将拥有如下内容:

chrome.extension.onRequest.addListener(function(request, sender, sendResponse) {
if (request.method == "getSelection")
sendResponse({data: window.getSelection().toString()});
else
sendResponse({}); // snub them.
});

现在假设您希望在单击 browser action 时发生这种情况。 , 在您的 background page 内,您需要监听 onclick 事件。
chrome.browserAction.onClicked.addListener(function(tab) {
chrome.tabs.sendRequest(tab.id, {method: "getSelection"}, function(response) {
var selectedText = response.data;
chrome.tabs.create({url: 'http://google.com?q=' + selectedText});
});
});

您会注意到,一旦单击该图标(浏览器操作),它就会向内容脚本发送一个请求,一旦内容脚本收到该操作,它就会将所选文本作为其有效负载发回。然后您可以根据选择打开一个选项卡到 Google 搜索结果。

关于google-chrome - 为 GET 查询编写谷歌浏览器扩展,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2440226/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com