目录
1、配置 manifest.json 文件
{
"manifest_version": 2,
"name": "key_word_plugin",
"version": "1.0",
"description": "find_key_word",
// 添加权限
"permissions":[
"*://*/*",
"activeTab"
],
"icons": {
"48": "icons/flower.jpg"
},
"content_scripts": [
{
"matches": ["*://*/*"],
"js": ["index.js"],
"run_at":"document_idle"
}
],
// 侧边栏
"sidebar_action": {
"default_title": "My tool",
"default_panel": "./sidebar/sidebar.html",
"default_icon": "./sidebar/sidebar_icon.png"
},
// 背景脚本
"background": {
"scripts": ["bg.js"],
"persistent": false,
"type": "module"
}
}
2、编写侧边栏结构
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<style>
/* 略 */
</style>
<link rel="stylesheet" href="./top_area.css">
</head>
<body>
<div class="container">
<!-- 关键词查找 -->
<div class="top-area">
<section class="inp-area">
<input class="inp" type="text" maxlength="10">
<button class="find-btn">查找</button>
</section>
<section class="result-area">
<p>共找到</p>
<p class="count">
<!-- 将查找到的结果条目数量写入此处 -->
</p>
<p>处;</p>
</section>
<section class="btn-area">
<input type="number" step="1" min="1" class="goto-keyword-inp usable">
<button class="usable goto-btn">跳转</button>
</section>
<section class="btn-area">
<button class="usable last-btn">上一个</button>
<button class="usable next-btn">下一个</button>
<button class="clear">清除所有标记</button>
</section>
</div>
</div>
</body>
<script src="keyword.js"></script>
</html>
效果图
3、查找关键词并高亮的方法
// 获取当前激活的标签页面 使用 tabs 需要权限 activeTab,在 manifest 中配置
browser.tabs.query({active: true, currentWindow: true}).then((logTabs,onError)=>