当前位置: 首页 > news >正文

编写一个Chrome插件,网页选择文字后,右键出现菜单“search with bing”,选择菜单后用bing搜索文字

kimi ai 生成,测试可用,需要自行准备图标文件
创建一个简单的Chrome插件来实现选择文本后的搜索功能,你需要完成以下几个步骤:

  1. 创建插件的基础文件夹和文件

    • 创建一个文件夹用于存放插件的所有文件。
    • 在该文件夹中创建以下文件:
      • manifest.json:插件的配置文件。
      • popup.html:右键菜单选择后的弹出页面。
      • popup.js:弹出页面的JavaScript逻辑。
      • background.js:后台脚本,用于处理搜索逻辑。
  2. 配置manifest.json

    {"manifest_version": 3,"name": "Bing Search","version": "1.0","description": "Search selected text with Bing","permissions": ["contextMenus"],"background": {"service_worker": "background.js"},"action": {"default_popup": "popup.html","default_icon": {"16": "images/icon16.png","48": "images/icon48.png","128": "images/icon128.png"}},"icons": {"16": "images/icon16.png","48": "images/icon48.png","128": "images/icon128.png"}
    }
    
    • 请确保你的插件文件夹中包含图标文件。
  3. 创建popup.html

    <!DOCTYPE html>
    <html>
    <head><title>Search with Bing</title><script src="popup.js"></script>
    </head>
    <body><h1>Search with Bing</h1>
    </body>
    </html>
    
  4. 编写popup.js

    document.addEventListener('DOMContentLoaded', function() {document.body.addEventListener('click', function(event) {if (event.target.tagName === 'A') {chrome.runtime.sendMessage({searchQuery: window.getSelection().toString()});}});
    });
    
  5. 编写background.js

    chrome.runtime.onMessage.addListener(function(request, sender, sendResponse) {if (request.searchQuery) {const searchUrl = `https://www.bing.com/search?q=${encodeURIComponent(request.searchQuery)}`;chrome.tabs.create({ url: searchUrl });}}
    );
    
  6. 添加右键菜单项

    • 你需要在background.js中添加逻辑来创建上下文菜单项。
    chrome.contextMenus.create({id: "searchWithBing",title: "Search with Bing",contexts: ["selection"]
    });chrome.contextMenus.onClicked.addListener(function(info) {if (info.menuItemId === "searchWithBing") {chrome.tabs.create({url: `https://www.bing.com/search?q=${encodeURIComponent(info.selectionText)}`});}
    });
    
  7. 加载插件到Chrome

    • 打开Chrome,进入chrome://extensions/
    • 开启“开发者模式”。
    • 点击“加载已解压的扩展程序”,选择你的插件文件夹。
  8. 测试插件

    • 在网页上选择文本,右键点击,应该看到“Search with Bing”选项。
    • 选择该选项,应打开一个新的标签页并用Bing搜索所选文本。

请注意,上述代码仅为示例,实际开发中可能需要进一步的调整和完善。此外,由于Chrome插件API的更新,部分API可能有变动,请根据最新的Chrome插件开发文档进行适配。

http://www.lryc.cn/news/408256.html

相关文章:

  • 【算法】分割回文串
  • lua 游戏架构 之 游戏 AI (三)ai_attack
  • 大数据之Oracle同步Doris数据不一致问题
  • visual studio 问题总结
  • go-错误码的最佳实践
  • Python面试题:使用Matplotlib和Seaborn进行数据可视化
  • 模拟实现c++中的vector模版
  • uniapp安卓通过绝对路径获取文件
  • Known框架实战演练——进销存业务单据
  • 解决npm依赖树冲突的方法以及npm ERR! code ERESOLVE错误的解决方案
  • Spring Boot + Spring Batch + Quartz 整合定时批量任务
  • C++STL简介(二)
  • 嵌入式高频面试题100道及参考答案(3万字长文)
  • python爬虫-事件触发机制
  • LeetCode-day27-3106. 满足距离约束且字典序最小的字符串
  • C++中的static_cast函数
  • 从零开始学习网络安全渗透测试之基础入门篇——(二)Web架构前后端分离站Docker容器站OSS存储负载均衡CDN加速反向代理WAF防护
  • 2679. 矩阵中的和
  • Unity Playables:下一代动画与音频序列
  • matlab仿真 模拟调制(下)
  • RabbitMQ是什么?
  • 追问试面试系列:分布式id
  • 护网紧急情况应对指南:Linux 应急响应手册
  • WEB攻防-通用漏洞-SQL 读写注入-MYSQLMSSQLPostgreSQL
  • 【前端学习笔记】CSS基础一
  • Github遇到的问题解决方法总结(持续更新...)
  • 数字信封+数字签名工具类测试样例(Java实现)
  • The Schematic workflow failed. See above.
  • 操作系统面试知识点总结4
  • Lua实现面向对象以及类的继承