Chrome扩展插件案例:单词查询

Chrome扩展插件案例:单词查询

在页面内选中单词,右键菜单中显示词典连接,自动将选中单词发送至该词典查询

创建项目文件夹,在文件夹内创建一下文件

manifest.json:

javascript 复制代码
{
    "manifest_version":2,//版本号,由google指定的manifest格式版本为2
    "name": "有道词典查询(第三方)",//插件名称
    "version":"1.0",//插件版本
    "description":"在网页内选中任意单词后,用鼠标右键菜单查询",//插件描述
    "icons":{
        "128":"img/icon.png",
        "48":"img/icon.png",
        "16":"img/icon.png"
    },
    "browser_action":{
        "default_icon":"img/icon.png",
        "default_popup":"popup.html"
    },
    "background":{
        "scripts":["background.js"],//关联的代码
        "persistent":true //在页面上一直运行
    },
    "permissions":[       
        "contextMenus"
    ]
    
}
 

popup.html:

html 复制代码
<!DOCTYPE html>
<html>
<head>
	<meta charset="utf-8">
    <title>有道词典查询</title>
</head>
<body>
	<!--点击浏览器插件图标时会弹出的内容-->
    <h1 style="color:red;width:200px;">有道词典查询</h1>
	<p>在页面选中单词后,鼠标右键菜单中选择"有道词典查询"</p>
</body>
</html>

background.js

javascript 复制代码
chrome.contextMenus.create({
	id:"YoudaoDictionarySearch",
	title: '有道英汉词典查询:%s', // %s表示选中的文字
	contexts: ['selection'], // 只有选中页面内文字时才会出现此右键菜单
	onclick: function(params)    {
		//创建新的标签页
		chrome.tabs.create({url: 'https://www.youdao.com/result?lang=en&word=' + encodeURI(params.selectionText)});
	}
});

然后在Chrome浏览器中地址栏右边 -> 拓展程序 -> 管理拓展程序 -> 打开"开发者模式" -> 加载已解压的扩展程序 -> 大功告成!

相关推荐
疯狂打码的少年23 分钟前
【数据库技术】关系模型基本概念(关系/属性/元组/键)
java·服务器·数据库·笔记
泯泷2 小时前
手搓JSVMM第 8 篇:函数调用:参数、返回值与调用帧
前端·javascript·前端框架
Sherotree2 小时前
Google Antigravity——Agent 被提到主界面
前端·ide·后端·edge浏览器
Mr数据杨2 小时前
【Codex】用学生入学评估模块建立新生能力画像
android·java·javascript·django·codex·项目开发
2601_962056232 小时前
Spring Boot 入门 与 无法解析符号 springframework 的解决
java·spring boot·后端
里欧跑得慢3 小时前
Flutter 像素级还原:设计稿到代码的视觉无损转换技巧
前端·css·flutter·web
Thomas21433 小时前
Java scala 数组 链表
java·链表·scala
里欧跑得慢3 小时前
Flutter 三方库 function_tree — 鸿蒙应用开发中的动态数学公式解析与计算神器,实现鸿蒙深度适配下的复杂函数逻辑运行时求值实战(适配鸿蒙 HarmonyOS Next ohos)
android·前端·安全·flutter·华为·harmonyos
亚历克斯神3 小时前
低代码与 AI 的融合趋势——从可视化搭建到自然语言生成应用
java·spring·微服务
苏灿烤鱼3 小时前
没有机密文件,也没有付费数据,在浏览器里造一颗"间谍卫星"
前端·javascript·github