一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線(xiàn)課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

人人都能手寫(xiě)的chrome插件,幫我省了1000多塊錢(qián)

京東云 ? 來(lái)源:jf_75140285 ? 作者:jf_75140285 ? 2024-09-27 14:41 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

在網(wǎng)購(gòu)的世界里,價(jià)格波動(dòng)常常讓人感到無(wú)奈?!毒〇|價(jià)保》插件通過(guò)定時(shí)監(jiān)控已購(gòu)商品價(jià)格變化,降價(jià)自動(dòng)申請(qǐng)京東價(jià)格保護(hù),幫我省下了不少錢(qián)。

作為一個(gè)前端開(kāi)發(fā)工程師,這讓我意識(shí)到,手寫(xiě)一個(gè)瀏覽器插件是一件很有趣且有意義的事。

于是,我決定嘗試自己動(dòng)手,開(kāi)發(fā)一個(gè)簡(jiǎn)單的二維碼生成器插件,各位小伙伴也可參考以下步驟實(shí)現(xiàn)自己想要的插件。

一、 為什么要手寫(xiě)瀏覽器插件

手寫(xiě)插件有許多好處,以下是一些詳細(xì)的原因:

1.1 個(gè)性化定制

手寫(xiě)插件可以根據(jù)個(gè)人需求進(jìn)行定制。市面上的插件功能可能不完全符合你的需求,而自己動(dòng)手開(kāi)發(fā)插件,可以精確地實(shí)現(xiàn)你想要的功能。

1.2. 解決特定問(wèn)題

有時(shí),你可能需要一個(gè)非常特定的功能,而現(xiàn)有的插件無(wú)法提供。手寫(xiě)插件可以幫助你快速解決這些特定問(wèn)題,提高工作效率。

1.3 增強(qiáng)安全性

使用第三方插件時(shí),安全性是一個(gè)重要的考慮因素。自己開(kāi)發(fā)插件,可以確保代碼的安全性,避免潛在的隱私泄露或惡意行為。

1.4 節(jié)省成本

雖然許多插件是免費(fèi)的,但一些高級(jí)功能需要付費(fèi)。通過(guò)手寫(xiě)插件,你可以免費(fèi)獲得這些功能,同時(shí)避免不必要的開(kāi)支。

總之,手寫(xiě)插件不僅能帶來(lái)技術(shù)上的成長(zhǎng),還能在日常生活中提供實(shí)際的便利和解決方案。

二、 如何手寫(xiě)瀏覽器插件

2.1 認(rèn)識(shí)插件目錄結(jié)構(gòu)

一個(gè) Chrome 插件通常包含以下文件和目錄:

my-qrcode-plugin/
│
├── manifest.json  // 插件的配置文件,定義插件的基本信息、權(quán)限和功能。
├── background.js  // 后臺(tái)腳本,負(fù)責(zé)處理插件的邏輯,例如創(chuàng)建右鍵菜單。
├── popup.html     // 插件的彈出頁(yè)面,用戶(hù)點(diǎn)擊插件圖標(biāo)時(shí)顯示。
├── http://www.www27dydycom.cn/images/chaijie_default.png       // 插件的彈出頁(yè)面,執(zhí)行的腳本。
└── icons/         // 存放插件的圖標(biāo),建議提供 16x16、48x48 和 128x128 像素的圖標(biāo),不同大小的圖標(biāo)有不同的作用。
    ├── icon16.png
    ├── icon48.png
    └── icon128.png
    

2.2 編寫(xiě) manifest.json

manifest.json 是插件的核心配置文件:

{
 "manifest_version": 3,
 "name": "QR Code Generator",
 "version": "1.0",
 "permissions": ["contextMenus", "activeTab", "scripting"],
 "icons": {
   "16": "icons/icon16.png",
   "48": "icons/icon48.png",
   "128": "icons/icon128.png"
  },
 "background": {
 "service_worker": "background.js"
  },
 "action": {
 "default_popup": "popup.html"
  }
}

2.3 編寫(xiě) background.js

background.js 負(fù)責(zé)插件后臺(tái)的邏輯實(shí)現(xiàn):

chrome.runtime.onInstalled.addListener(() => {
 chrome.contextMenus.create({
   id: "generateQRCode",
   title: "Generate QR Code",
   contexts: ["page"]
 });
});

chrome.contextMenus.onClicked.addListener((info, tab) => {
 if (info.menuItemId === "generateQRCode") {
 const url = tab.url;
 const apiUrl = `https://api.cl2wm.cn/api/qrcode/code?text=${url}&mhid=sELPDFnok80gPHovKdI`;

 chrome.scripting.executeScript({
   target: { tabId: tab.id },
   func: showQRCode,
   args: [apiUrl]
 });
 }
});

function showQRCode(apiUrl) {
 const iframe = document.createElement('iframe');
 iframe.style.position = 'fixed';
 iframe.style.top = '50%';
 iframe.style.left = '50%';
 iframe.style.transform = 'translate(-50%, -50%)';
 iframe.style.width = '500px';
 iframe.style.height = '500px';
 iframe.style.border = 'none';
 iframe.style.zIndex = '1000'; // 確保在最上層
 iframe.src = apiUrl;

 document.body.appendChild(iframe);

 setTimeout(() => {
   iframe.remove();
 }, 5000);
}

2.4 編寫(xiě) popup.html

popup.html 是插件的用戶(hù)界面:





 
 
 QR Code Generator
 
 body {
   width: 500px;
   height: 500px;
   display: flex;
   justify-content: center;
   align-items: center;
   font-family: Arial, sans-serif;
 }

 #qrcode iframe {
   width: 500px;
   height: 500px;
   border: none;
 }
 


2.5 編寫(xiě) http://www.www27dydycom.cn/images/chaijie_default.png

http://www.www27dydycom.cn/images/chaijie_default.png 是插件的用戶(hù)界面的執(zhí)行腳本:

document.addEventListener('DOMContentLoaded', function() {
 chrome.tabs.query({active: true, currentWindow: true}, function(tabs) {
 if (tabs.length === 0) {
   console.error('No active tab found');
   return;
 }

 const url = tabs[0].url;
 const apiUrl = `https://api.cl2wm.cn/api/qrcode/code?text=${url}&mhid=sELPDFnok80gPHovKdI`;

 const iframe = document.getElementById('qrFrame');
   iframe.src = apiUrl;
 });
});

2.6 驗(yàn)證插件功能

在瀏覽器上測(cè)試 Chrome 插件功能,可以通過(guò)以下步驟進(jìn)行:

2.6.1. 加載未打包的擴(kuò)展

1.打開(kāi) Chrome 瀏覽器。

2.輸入 `chrome://extensions/` 進(jìn)入擴(kuò)展管理頁(yè)面。

3.打開(kāi)右上角的“開(kāi)發(fā)者模式”。

4.點(diǎn)擊“加載已解壓的擴(kuò)展程序”按鈕。

5.選擇你的插件目錄(my-qrcode-plugin)。

2.6.2. 驗(yàn)證功能

1. 在任意一個(gè)網(wǎng)頁(yè)中, 通過(guò)鼠標(biāo)右鍵找到菜單 Generate QR Code, 點(diǎn)擊該菜單,頁(yè)面生成一個(gè)二維碼,手機(jī)掃描二維碼即是該網(wǎng)頁(yè),5S后二維碼消失視為驗(yàn)證通過(guò)。

右鍵菜單截圖:

?

wKgZomb2U6OAPV-KAAPotSlZS3c384.png

??

二維碼生成效果圖:

wKgaomb2U6SAGSyXAAPXow_xMAU879.png

??

2. 在瀏覽器右上角選擇該插件《Generate QR Code》,在網(wǎng)頁(yè)右上角生成對(duì)應(yīng)的二維碼,二維碼不消失,視為驗(yàn)證通過(guò)。

右上角插件入口截圖:

wKgZomb2U6aACXHJAAXImlSFgfw562.png

??

二維碼效果圖:

wKgaomb2U6eAQtARAAU5Ab7P90w192.png

??

2.6.3. 實(shí)時(shí)修改和刷新

1.在開(kāi)發(fā)者工具中修改代碼后,可以直接保存并刷新插件或頁(yè)面以查看更改效果。

2.通過(guò)“重新加載”按鈕在擴(kuò)展管理頁(yè)面中更新插件。

通過(guò)這些步驟,你可以在瀏覽器中高效地測(cè)試和調(diào)試 Chrome 插件的功能。

三、 插件發(fā)布到 Chrome Web Store

以下的發(fā)布谷歌插件的步驟

1. 創(chuàng)建開(kāi)發(fā)者賬號(hào): 前往 [Chrome Web Store Developer Dashboard](https://chrome.google.com/webstore/developer/dashboard) 創(chuàng)建開(kāi)發(fā)者賬號(hào)。

2. 打包插件: 在 Chrome 瀏覽器中,進(jìn)入擴(kuò)展程序頁(yè)面,點(diǎn)擊“打包擴(kuò)展程序”,選擇插件的根目錄進(jìn)行打包。

3. 上傳插件: 登錄開(kāi)發(fā)者賬號(hào),上傳打包后的 `.zip` 文件。

4. 填寫(xiě)信息: 填寫(xiě)插件的詳細(xì)信息,包括名稱(chēng)、描述、截圖等。

5. 支付費(fèi)用: 支付一次性注冊(cè)費(fèi)用:5美元。

6. 提交審核: 提交插件進(jìn)行審核,審核通過(guò)后即可發(fā)布。

由于博主囊中羞澀, 就沒(méi)有支付費(fèi)用, 各位感興趣的小伙伴可以通過(guò)以上步驟嘗試去發(fā)布自己的插件,讓更多的人看到。

四、 總結(jié)

本文通過(guò)《京東價(jià)?!凡寮o我?guī)?lái)的便利,引發(fā)了個(gè)人探索瀏覽器插件的思考。 通過(guò)實(shí)現(xiàn)一個(gè)簡(jiǎn)單的瀏覽器插件,幫助我們認(rèn)識(shí)、掌握、應(yīng)用瀏覽器插件的基本原理。更深入的知識(shí)咱們可以通過(guò)官網(wǎng)去學(xué)習(xí)。

?

最后,最重要的一點(diǎn):

歡迎評(píng)論區(qū)互動(dòng), 大家一起來(lái)找bug。

歡迎大家交流學(xué)習(xí),共同成長(zhǎng)。

審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 前端
    +關(guān)注

    關(guān)注

    1

    文章

    214

    瀏覽量

    18276
  • 開(kāi)發(fā)工程師

    關(guān)注

    1

    文章

    91

    瀏覽量

    15129
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    圖紙代碼完全開(kāi)源!稚暉君:人人都能造人形機(jī)器人!

    SDK“開(kāi)源”而大肆宣傳不同,智元機(jī)器人開(kāi)源的內(nèi)容包括硬件和軟件的“一站式”技術(shù)資源,資料包大小超過(guò)1.2GB,完全可以通過(guò)圖紙和代碼自行復(fù)現(xiàn)靈犀X1機(jī)器人。 靈犀X1:人形機(jī)器人人人能造 靈犀X1在今年8月的智元機(jī)器人年度新品發(fā)布會(huì)上其實(shí)
    的頭像 發(fā)表于 10-28 06:10 ?6565次閱讀
    圖紙代碼完全開(kāi)源!稚暉君:<b class='flag-5'>人人</b><b class='flag-5'>都能</b>造人形機(jī)器人!

    基于LockAI視覺(jué)識(shí)別模塊:手寫(xiě)數(shù)字識(shí)別

    手寫(xiě)數(shù)字識(shí)別是一種經(jīng)典的模式識(shí)別和圖像處理問(wèn)題,旨在通過(guò)計(jì)算機(jī)自動(dòng)識(shí)別用戶(hù)手寫(xiě)的數(shù)字。 本文將教會(huì)你如何使用基于RV1106的 LockAI視覺(jué)識(shí)別模塊進(jìn)行手寫(xiě)數(shù)字識(shí)別。 源代碼:https
    發(fā)表于 06-30 16:45

    基于LockAI視覺(jué)識(shí)別模塊:手寫(xiě)數(shù)字識(shí)別

    手寫(xiě)數(shù)字識(shí)別是一種經(jīng)典的模式識(shí)別和圖像處理問(wèn)題,旨在通過(guò)計(jì)算機(jī)自動(dòng)識(shí)別用戶(hù)手寫(xiě)的數(shù)字。本文將教會(huì)你如何使用基于RV1106的LockAI視覺(jué)識(shí)別模塊進(jìn)行手寫(xiě)數(shù)字識(shí)別。
    的頭像 發(fā)表于 06-30 15:44 ?426次閱讀
    基于LockAI視覺(jué)識(shí)別模塊:<b class='flag-5'>手寫(xiě)</b>數(shù)字識(shí)別

    用 VSCode 編寫(xiě)自己的 KiCad 插件(下)

    “ ?很多小伙伴都想自己開(kāi)發(fā) KiCad 插件,但不知從何入手。本文由華秋電子的另一位 KiCad 開(kāi)發(fā)者波波同學(xué)撰寫(xiě),分享了如何快速搭建環(huán)境,并開(kāi)發(fā)一個(gè)簡(jiǎn)單的插件。? ” ? ? ? 所有環(huán)境配置
    的頭像 發(fā)表于 06-19 11:44 ?1294次閱讀
    用 VSCode 編寫(xiě)自己的 KiCad <b class='flag-5'>插件</b>(下)

    PREEvision插件使用場(chǎng)景介紹

    PREEvision插件中心(Add-in House)是Vector中國(guó)PREEvision團(tuán)隊(duì)針對(duì)中國(guó)用戶(hù)開(kāi)發(fā)的插件網(wǎng)站。用戶(hù)可以在這里找到各種場(chǎng)景的擴(kuò)展插件,包括以太網(wǎng)與SOA設(shè)計(jì)、軟件及通信設(shè)計(jì)、硬件設(shè)計(jì)、變更管理等領(lǐng)域
    的頭像 發(fā)表于 03-14 13:50 ?523次閱讀
    PREEvision<b class='flag-5'>插件</b>使用場(chǎng)景介紹

    基于BLE技術(shù) 智能手寫(xiě)筆解決方案:改變你的書(shū)寫(xiě)體驗(yàn)PTR5415

    的書(shū)寫(xiě)動(dòng)作和手勢(shì),實(shí)現(xiàn)高精度的數(shù)字化書(shū)寫(xiě)。 2、實(shí)時(shí)同步:通過(guò)與移動(dòng)設(shè)備的BLE連接,智能手寫(xiě)筆可以實(shí)時(shí)將書(shū)寫(xiě)內(nèi)容傳輸?shù)皆O(shè)備上,讓用戶(hù)可以在屏幕上即時(shí)看到自己的書(shū)寫(xiě)結(jié)果。 3、平臺(tái)兼容:我們的解決方案
    發(fā)表于 03-11 17:50

    徹底移除Calico網(wǎng)絡(luò)插件

    0.前言 參考文檔:https://github.com/containernetworking/cni Pod網(wǎng)絡(luò)插件,為了實(shí)現(xiàn)Pod網(wǎng)絡(luò)而需要的插件、組件。由于Kubernetes通過(guò)開(kāi)放
    的頭像 發(fā)表于 01-23 17:26 ?1061次閱讀
    徹底移除Calico網(wǎng)絡(luò)<b class='flag-5'>插件</b>

    環(huán)球儀器Omni插件機(jī)的優(yōu)勢(shì)

    由于傳統(tǒng)插件機(jī)引腳歪斜,導(dǎo)致拋料率高,減低插件成功率,提高了拋料率。環(huán)球儀器的Omni 插件機(jī),則采用兩項(xiàng)技術(shù),提高插件成功率,減低拋料率。
    的頭像 發(fā)表于 01-07 09:12 ?813次閱讀
    環(huán)球儀器Omni<b class='flag-5'>插件</b>機(jī)的優(yōu)勢(shì)

    用了50PCS的LDC1000,有10PCS讀出的頻率數(shù)據(jù)一直不變,是哪里出了問(wèn)題?

    我目前遇到的問(wèn)題是,總共用了50PCS的LDC1000,有10PCS讀出的頻率數(shù)據(jù)一直不變,但是其他的寄存器正常,我更換了新的LDC1000上去后就正常了,難道LDC1000很容易
    發(fā)表于 01-06 06:45

    ADS1000片級(jí)聯(lián),怎么確定每一片地址???

    ADS1000片級(jí)聯(lián),怎么確定每一片地址啊。硬件上沒(méi)有設(shè)置地址的引腳。求大神知道。
    發(fā)表于 12-24 07:22

    寫(xiě)一個(gè)Chrome瀏覽器插件

    、瀏覽器插件有哪些種類(lèi) ?以chromium為內(nèi)核的瀏覽器插件Chrome ??firefox瀏覽器插件 ???safari瀏覽器插件
    的頭像 發(fā)表于 11-18 17:12 ?1045次閱讀
    寫(xiě)一個(gè)<b class='flag-5'>Chrome</b>瀏覽器<b class='flag-5'>插件</b>

    KiCad插件大全

    感謝Hayden同學(xué)的整理! 插件使用方式 1. 解壓縮插件包到KICAD插件目錄。例如,在Windows上可能是:C:Program
    的頭像 發(fā)表于 11-12 12:24 ?2460次閱讀

    VSCode插件的安裝和使用

    今天介紹一款我工作上經(jīng)常用到的一款VSCode的插件-VsCode Action Buttons,這個(gè)插件可以釋放手敲命令行清除、編譯、運(yùn)行、部署到目標(biāo)機(jī)等操作,具體功能可由開(kāi)發(fā)者自由定義,詳細(xì)功能的使用可以參考官網(wǎng)。
    的頭像 發(fā)表于 11-04 15:36 ?880次閱讀
    VSCode<b class='flag-5'>插件</b>的安裝和使用

    繪王原筆跡手寫(xiě):高度定制化手寫(xiě)輸入解決方案

    在過(guò)去的數(shù)字化實(shí)踐中,手寫(xiě)輸入產(chǎn)品以其便捷性和準(zhǔn)確性,成為通信、銀行、保險(xiǎn)、教育、醫(yī)療、稅務(wù)、政務(wù)等領(lǐng)域不可或缺的工具。面對(duì)個(gè)性化業(yè)務(wù)需求,繪王提供量身定做的原筆跡手寫(xiě)解決方案,助力企業(yè)在數(shù)字化轉(zhuǎn)型
    的頭像 發(fā)表于 09-28 08:01 ?545次閱讀
    繪王原筆跡<b class='flag-5'>手寫(xiě)</b>:高度定制化<b class='flag-5'>手寫(xiě)</b>輸入解決方案

    ESP8266與IE相比,Chrome/Mozilla中的TCP服務(wù)器速度較慢是什么原因?

    我正在嘗試將 ESP8266-01 模塊用于一個(gè)項(xiàng)目。我將其用作TCP服務(wù)器。我注意到瀏覽器 Chrome 和 Mozilla 的服務(wù)器響應(yīng)速度非常慢。但是,當(dāng)我使用IE瀏覽器時(shí),服務(wù)器的速度非???。這有什么具體的原因嗎?
    發(fā)表于 07-22 06:44