Chrome 擴充套件外掛開發DEMO
任務背景
工作中常用到一些小工具,而網上現成的線上工具用起來不爽,於是想通過自己實現一些 Chrome 擴充套件外掛來解決這些問題。
任務目標
通過chrome外掛,一鍵生成瀏覽器當前網頁連結地址的二維碼。
工程結構
---
--- icon.png
--- manifest.json
--- popup.html
--- js
--- popup.js
--- qrcode.min.js
icon.png 是 Chrome 外掛圖示;
manifest.json 是配置檔案;
popup.html 是外掛彈出頁;
js 是 JavaScript 指令碼存放目錄;
popup.js 是外掛彈出頁JS指令碼;
qrcode.min.js 是二維碼生成JS工具庫。
素材資源
icon.png
在 iconfont 上找合適的圖示:http://www.iconfont.cnJavaScript 版二維碼工具庫:
qrcode.js 官網主頁:https://davidshimjs.github.io/qrcodejs
主要程式碼
manifest.json :
{
"manifest_version": 2,
"name": "QR Code generator",
"description": "Dotions - 二維碼生成器",
"version": "1.0",
"browser_action": {
"default_icon": "icon.png",
"default_popup": "popup.html",
"default_title": "點這裡生成當前頁二維碼!"
},
"content_security_policy": "script-src 'self'; object-src 'self'",
"permissions": ["activeTab","tabs"]
}
popup.html :
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>QR Code Generator</title>
<script type="text/javascript" src="js/qrcode.min.js"></script>
<script type="text/javascript" src="js/popup.js"></script>
</head>
<body>
<div style="width:150px;" id="qr_code"> </div>
</body>
</html>
popup.js :
function load() {
window.console.info('ready.....');
// 獲取到當前啟用態的 tab 物件
chrome.tabs.query({
"active" : true
}, function(tabArr) {
var tab = tabArr[0];
window.console.info("title=" + tab.title);
window.console.info("url=" + tab.url);
var qrcode = new QRCode(document.getElementById("qr_code"), {
width: 150,
height: 150,
colorDark : "#000000",
colorLight : "#ffffff",
correctLevel : QRCode.CorrectLevel.H
});
qrcode.clear();
qrcode.makeCode(tab.url);
});
};
window.onload = load();
載入外掛 & 除錯
開啟chrome 外掛管理器
在chrome位址列中輸入以下地址開啟外掛管理器:
chrome://extensions
開啟開發者模式
載入已寫好的外掛
效果演示
點選自己的二維碼圖示,生成了一個當前頁的二維碼:
打包外掛
在專案路徑上層路徑下會生成兩個檔案:project_name.crx, project_name.pem
到此外掛開發完成。
相關文章
- 前端開發10大Chrome外掛擴充套件前端Chrome套件
- 寫個Markdown外掛,講講Chrome擴充套件開發Chrome套件
- 那些離不開的 Chrome 擴充套件外掛Chrome套件
- 15個對開發人員最佳的Chrome擴充套件外掛Chrome套件
- chrome擴充套件程式開發Chrome套件
- 12 個強大的 Chrome 外掛擴充套件Chrome套件
- Chrome瀏覽器擴充套件開發系列之十一:NPAPI外掛的使用Chrome瀏覽器套件API
- chrome瀏覽器外掛/擴充套件開發之popup與background通訊Chrome瀏覽器套件
- 如何開發Chrome擴充套件程式Chrome套件
- Chrome 擴充套件程開發初探Chrome套件
- jQuery擴充套件外掛jQuery套件
- jQuery外掛擴充套件jQuery套件
- [外掛擴充套件]更新IP外掛套件
- [外掛擴充套件]廣告外掛2.0套件
- [外掛擴充套件]附件Attachment外掛套件
- [外掛擴充套件]Ping外掛套件
- [外掛擴充套件]投票外掛1.0套件
- [外掛擴充套件]騰訊分析外掛套件
- [外掛擴充套件]外掛需求徵集套件
- chrome擴充-chrome外掛-強制copyChrome
- Chrome瀏覽器擴充套件開發系列之十九:擴充套件開發示例Chrome瀏覽器套件
- Chrome瀏覽器擴充套件開發系列之一:初識Google Chrome擴充套件Chrome瀏覽器套件Go
- Chrome 擴充套件的開發實戰Chrome套件
- [外掛擴充套件]焦點圖外掛套件
- [外掛擴充套件]友情連結——外掛套件
- [外掛擴充套件]qq登入外掛套件
- [外掛擴充套件]修改密碼外掛套件密碼
- [外掛擴充套件]留言版外掛套件
- [外掛擴充套件]單頁管理外掛套件
- [外掛擴充套件]邀請碼外掛套件
- chrome外掛開發簡介(二)——如何添“加瀏覽器擴充套件白名單”Chrome瀏覽器套件
- [外掛擴充套件]jQueryFileUpload套件jQuery
- 外掛擴充套件需求_好友套件
- iOS 通知擴充套件外掛iOS套件
- [外掛擴充套件]外掛開發過程中 模型欄位定義套件模型
- VSCode WebView外掛(擴充套件)開發實戰VSCodeWebView套件
- [Flutter翻譯]如何用Flutter 2.2.3建立Chrome擴充套件外掛FlutterChrome套件
- 八個改變遊戲規則的chrome外掛擴充套件遊戲Chrome套件