成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專(zhuān)欄INFORMATION COLUMN

# 編寫(xiě)第一個(gè)Chrome Extension

joyqi / 2937人閱讀

摘要:可以加載到內(nèi),通過(guò)操縱瀏覽器,從而完成一些定制的工作。一個(gè)最低需求的文件是必要的可選的圖標(biāo)等。如果這樣驗(yàn)證都是如期望的話(huà),就表明你的第一個(gè)擴(kuò)展已經(jīng)開(kāi)發(fā)成功。正式發(fā)布可以在內(nèi)發(fā)布擴(kuò)展,只要點(diǎn)擊進(jìn)入后,按照操作指示即可。

Chrome Extension可以加載到Chrome內(nèi),通過(guò)操縱Chrome瀏覽器,從而完成一些定制的工作。

假設(shè)你想要一個(gè)功能,它可以在你點(diǎn)擊上下文菜單項(xiàng)目時(shí)剪貼當(dāng)前標(biāo)簽的URL和標(biāo)題的話(huà),這個(gè)功能在Chrome本身并不支持,那么就可以通過(guò)一個(gè)Chrome Extension來(lái)完成此項(xiàng)特性。

最少結(jié)構(gòu)

在編碼過(guò)程中,我常常需要?jiǎng)?chuàng)建一些占位圖片,以便驗(yàn)證UI布局和效果。因此我想要?jiǎng)?chuàng)建一個(gè)Chrome Extension,當(dāng)用戶(hù)打開(kāi)新的頁(yè)面時(shí),使用一個(gè)生成PlaceHolder的鏈接群替代默認(rèn)的新頁(yè)面。

一個(gè)Chrome Extension最低需求的文件是manifest.json、必要的html
可選的圖標(biāo)、CSS、JS等。這里的文件清單如下:

manifect.json 元文件
newtab.html   HTML文件
120.png       圖標(biāo)文件
元文件manifect.json

元文件用于描述一個(gè)Chrome Extension的信息,是創(chuàng)建一個(gè)Chrome Extension所必須的。

此文件是一個(gè)Json文件,在我們這次需求中文件如下:

{
"manifest_version": 2,
"name": "PlaceHolderImage",
"description": "Make PlaceHolder Image",
"version": "1",
"author": "Reco",
"browser_action": {
   "default_icon": "120.png",
   "default_title": "PlaceHolder Factory"
 },
"chrome_url_overrides" : {
  "newtab": "newtab.html"
},
"permissions": ["activeTab"]
}

接下來(lái)就非常關(guān)鍵的幾個(gè)字段做出說(shuō)明:

permissions字段指明應(yīng)用需要的權(quán)限。因?yàn)槲覀冃枰采w默認(rèn)的Chrome新建頁(yè)面的內(nèi)容,因此需要使用permissions字段,指明需要控制activeTab權(quán)限

chrome_url_overrides字段,指明覆蓋Chrome新建頁(yè)面的頁(yè)面,這里是newtab.html文件。此文件就是一個(gè)我們熟悉的任何的HTML文件,其中可以使用任何合法的HTML標(biāo)簽,以及包含和引入CSS、JS文件

browser_action字段也是非常關(guān)鍵的,用來(lái)指明Chrome Extension在Chrome工具條的圖標(biāo)和抬頭。加載任何一個(gè)擴(kuò)展后,會(huì)在Chrome瀏覽器工具條上顯示此指定的圖標(biāo),當(dāng)鼠標(biāo)移動(dòng)到此圖標(biāo)時(shí)會(huì)顯示此指定抬頭

其他字段,這樣用于顯示和備注目的,比如作者author,擴(kuò)展名字name等。它們不是關(guān)鍵字段,但是也需要學(xué)習(xí)了解

新頁(yè)面文件和圖標(biāo)

在manifest文件內(nèi)指定了newtab.html,會(huì)在用戶(hù)創(chuàng)建新頁(yè)面的時(shí)候顯示,因此是一個(gè)關(guān)鍵的文件。我們需要再次列出常見(jiàn)的需要生成PlaceHolder圖片的鏈接,內(nèi)容如下:

Image PlaceHolder!

因?yàn)橹皇菧y(cè)試,可以生成一個(gè)占位圖來(lái)做圖標(biāo),我們通過(guò)鏈接https://via.placeholder.com/120創(chuàng)建一個(gè)突破,并保存到

120.png

文件內(nèi)。

現(xiàn)在文件準(zhǔn)備完畢,可以去看效果了。

測(cè)試效果

打開(kāi)擴(kuò)展加載鏈接,進(jìn)入Chrome擴(kuò)展管理頁(yè)面,并打開(kāi)開(kāi)發(fā)者模式,點(diǎn)擊"加載已解壓的擴(kuò)展程序"按鈕,在對(duì)話(huà)框內(nèi)選擇你的開(kāi)發(fā)目錄,即可加載擴(kuò)展,你可以看到在Chrome工具欄內(nèi)的此擴(kuò)展的圖標(biāo),可以把鼠標(biāo)移動(dòng)到該圖標(biāo)上查看擴(kuò)展的標(biāo)題,點(diǎn)擊“新標(biāo)簽頁(yè)“菜單,可以看到你的newtab.html被顯示出來(lái)。

如果這樣驗(yàn)證都是如期望的話(huà),就表明你的第一個(gè)擴(kuò)展已經(jīng)開(kāi)發(fā)成功。

正式發(fā)布

可以在Chrome Dashboard內(nèi)發(fā)布擴(kuò)展,只要點(diǎn)擊進(jìn)入后,按照操作指示即可。

進(jìn)一步

在此擴(kuò)展的開(kāi)發(fā)過(guò)程中,我們了解到了類(lèi)似

permissions

chrome_url_overrides

browser_action

等特定于Chrome Extension的特定開(kāi)發(fā)技術(shù)概念,可以在Chrome開(kāi)發(fā)者指導(dǎo)內(nèi)找到更多API信息。

我個(gè)人想要做一個(gè)按鍵后拷貝當(dāng)前頁(yè)面的Title和URL的擴(kuò)展,可以從此擴(kuò)展Copy URL + Title內(nèi)學(xué)習(xí)到更多的開(kāi)發(fā)知識(shí)。

credits

本文概略翻譯于此文。
How to Create and Publish a Chrome Extension in 20 minutes
感謝作者的奉獻(xiàn)。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/99655.html

相關(guān)文章

  • # 編寫(xiě)二個(gè)Chrome Extension+Copy URL+Title

    摘要:添加鍵盤(pán)快捷鍵的方法提供了,可以通過(guò)它來(lái)添加觸發(fā)中操作的快捷鍵。可以在內(nèi)聲明如下這意味著在用戶(hù)按下指定按鈕,會(huì)觸發(fā)一個(gè)叫做的操作。在后臺(tái)頁(yè)面中,您可以通過(guò)將處理程序綁定到清單中定義的命令。 我們?cè)谏暇W(wǎng)時(shí),常常需要把剛興趣的文章記錄下來(lái),方便以后繼續(xù)細(xì)看。如果記錄為Markdown格式的話(huà),還可以方便的把文章鏈接加入到自己創(chuàng)作的文章內(nèi)。 今天編寫(xiě)的小工具,就是一個(gè)Chrome Exten...

    rollback 評(píng)論0 收藏0
  • Chrome 擴(kuò)展開(kāi)發(fā)——編寫(xiě)一個(gè)自己的瀏覽器插件

    摘要:配置文件每一個(gè)擴(kuò)展都有一個(gè)格式的文件,叫。此消息發(fā)送后會(huì)觸發(fā)擴(kuò)展內(nèi)每個(gè)頁(yè)面的事件。和持續(xù)長(zhǎng)時(shí)間的保持會(huì)話(huà)需要在和擴(kuò)展建立一個(gè)長(zhǎng)時(shí)間存在的通道。內(nèi)容腳本發(fā)送消息到擴(kuò)展程序建立通道,并給通道命名利用通道發(fā)送一條消息。 這次的練習(xí)是做一個(gè)Chrome的擴(kuò)展,分享一下入門(mén)開(kāi)發(fā)過(guò)程。因?yàn)樵谙鬟f那塊糾結(jié)了特別久,所以我會(huì)重點(diǎn)總結(jié)消息傳遞那塊。 這次做這個(gè)插件的功能很簡(jiǎn)單,就是點(diǎn)擊按鈕后可以對(duì)當(dāng)...

    SunZhaopeng 評(píng)論0 收藏0
  • FE.BASE-vscode使用、原理、插件開(kāi)發(fā)筆記

    摘要:插件提供內(nèi)容,負(fù)責(zé)渲染。增量更新,盡可能地減少重新渲染長(zhǎng)時(shí)間運(yùn)行的任務(wù)應(yīng)該支持,并可以取消插件能夠正確地處理對(duì)象的生命周期。使用了模式,運(yùn)行可以將這個(gè)對(duì)象銷(xiāo)毀。 使用 命令行使用 幫助:code --help 使用已經(jīng)打開(kāi)的窗口來(lái)打開(kāi)文件:code -r 打開(kāi)文件并滾動(dòng)到特定行:code -r -g package.json:128 比較兩個(gè)文件:code -r -d a.tx...

    MingjunYang 評(píng)論0 收藏0
  • Chrome擴(kuò)展開(kāi)發(fā)】定制HTTP請(qǐng)求響應(yīng)頭域

    摘要:關(guān)于我的博客掘金專(zhuān)欄路易斯專(zhuān)欄原文鏈接擴(kuò)展開(kāi)發(fā)定制請(qǐng)求響應(yīng)頭域本文共字,閱讀需分鐘。那么,我會(huì)放棄嗎反向代理顯然不會(huì),既然問(wèn)題出在上,我去掉就行了。然而無(wú)論多少次的學(xué)習(xí)和模仿,最終的目的還是為了使用,故開(kāi)發(fā)一款定制請(qǐng)求的勢(shì)在必行。 本文首發(fā)于《程序員》雜志2017年第9、10、11期,下面的版本又經(jīng)過(guò)進(jìn)一步的修訂。 關(guān)于 Github:IHeader 我的博客:louis blog ...

    MadPecker 評(píng)論0 收藏0
  • 實(shí)現(xiàn)一個(gè)簡(jiǎn)單的chrome插件

    摘要:小結(jié)本文只是簡(jiǎn)單分享了如何開(kāi)發(fā)一個(gè)簡(jiǎn)單的谷歌瀏覽器插件,以及一些注意事項(xiàng),并且提到了如何授權(quán)和使用谷歌插件,重點(diǎn)介紹了插件開(kāi)發(fā)必備的入口文件和插件中幾個(gè)重要環(huán)境以及環(huán)境之間的通信。 我們?cè)谏暇W(wǎng)的時(shí)候,都會(huì)用到瀏覽器,但是瀏覽器并非擁有我們想要的所有功能,我們可以根據(jù)自己的需要,實(shí)現(xiàn)自己的插件來(lái)滿(mǎn)足需求。比如網(wǎng)頁(yè)中經(jīng)常會(huì)有大量的廣告,如果你希望擁有一個(gè)純凈的網(wǎng)頁(yè),可以實(shí)現(xiàn)一個(gè)插件來(lái)刪除網(wǎng)...

    rubyshen 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

閱讀需要支付1元查看
<