婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > firefox 擴展開發技巧

firefox 擴展開發技巧

熱門標簽:電銷機器人怎么收費 滄州智能外呼系統收費 忻州外呼系統接口對接 語音平臺系統 湖北穩定外呼系統 洛陽便宜外呼系統廠家 嘟聲的電銷機器人 地圖標注和圖片標注 醫院地圖標注

Firefox Extension
參考:http://developer.mozilla.org/en/Extensions
http://www.ibm.com/developerworks/cn/web/wa-lo-firefox-ext/

目錄結構:
chrome.mainfest        // 定義整個擴展的目錄結構
install.rdf        // 定義擴展的ID,名稱等等信息
chrome/
chrome/content/        // 定義擴展界面(.xul文件),定義擴展界面實現功能的邏輯(.js文件)
chrome/skin/        // 定義擴展界面上用到的圖片,屬性風格,皮膚文件等(.css,.ico,.png)
chrome/locale/
chrome/locale/en-US/        // 定義翻譯字符串(.dtd文件),屬性翻譯字符串(.properties文件)
chrome/locale/zh-CN/     // 定義翻譯字符串(.dtd文件),屬性翻譯字符串(.properties文件)
defaults/
defaults/preferences/    // 定義需要保存的信息默認值(.js文件)
components/        // 定義擴展邏輯用的方法接口(.xpt, .dll文件)

安裝擴展:
將上面目錄結構的文件打包成.zip文件,然后改后綴為.xpi,拖到firefox界面上就會彈出安裝界面安裝就可以了

chrome.mainfest詳讀

// 示例代碼詳解
# 在前面加"#"表示注釋
# 注冊chrome.manifest
# 指定將要讀取的修改內容的路徑,后面必須帶"/" 可以修改Toolbars, menu bars, progress bars,
# and window title bars are all examples of elements that are typically part of the chrome

content    my_extension_name    chrome/content/

# 指定將要加載的皮膚路徑,后面必須帶"/"
skin    my_extension_name        classic/1.0     chrome/skin/

# 指定將要讀取的語言路徑,后面必須帶"/"
locale    my_extension_name        en-US            chrome/locale/en-US/
locale    my_extension_name        zh-CN            chrome/locale/zh-CN/

# 將后面的文件添加到前面的文件里
overlay    chrome://browser/content/browser.xul    chrome://my_extension_name /content/statusbarOverlay.xul

# 都是可選參數
# style         chrome://URI-to-style                                 chrome://stylesheet-URI [flags]
# override     chrome://package/type/original-uri.whatever     new-resolved-URI [flags]
# resource     aliasname                                             uri/to/files/ [flags]
# application = app-ID
# appversion 操作符 version    (操作符為"=", "", ">", "=", ">=")
# os = WINNT(操作系統)
# osversion >= 10.5
# platform格式如下:
# content     global-platform jar:toolkit.jar!/toolkit/content/global-platform/     platform

install.rdf詳讀    
參考:http://developer.mozilla.org/en/Building_an_Extension

?xml version="1.0"?>
RDF xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:em="http://www.mozilla.org/2004/em-rdf#">
Description about="urn:mozilla:install-manifest">

// 下面的參數是必須要添加的
// em:id>    當前平臺下生成的GUID
// em:version>      由"."連接的數字
// em:type>    指定的數字.
        // 2代表Extensions,4代表Themes,8代表Locale,32代表Multiple Item Package
// em:targetApplication>    指定這個擴展是為那個應用程序使用的
// 格式如下:    em:id>指定的應用程序的GUID;
//        em:minVersion>,em:maxVersion>分別為應用程序的最小最大版本號
//em:targetApplication>
//  Description>
//   em:id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}/em:id>
//    em:minVersion>1.5/em:minVersion>
//    em:maxVersion>2.0.0.*/em:maxVersion>
//  /Description>
///em:targetApplication>

// em:name>    顯示在應用程序界面上的擴展名稱

// 下面的參數是可選擇添加的
// em:description>        描述該擴展的功能
// em:creator>        創始人
// em:homepageURL>        主頁
// em:updateURL>        更新主頁
// em:optionsURL>
// em:aboutURL>
// em:iconURL>
// em:developer>        開發者
// em:translator>        翻譯者
// em:contributor>         捐助者
// em:targetPlatform>    目標程序的系統平臺
// em:localized>        集中顯示一些擴展的信息
// em:locale>    指定將來用那種語言來顯示信息(必要),在使用了em:localized>后用

// 例子:
em:id>{69354808-F0D7-40CC-BB5F-8C1B8F57CECC}/em:id>
em:version>0.91/em:version>
em:type>2/em:type>
em:name>statusbar settor/em:name>

// 目標程序為firfox
em:targetApplication>
    Description>
        em:id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}/em:id> //firefox的GUID
        em:minVersion>1.5/em:minVersion>
        em:maxVersion>2.0.0.*/em:maxVersion>
    /Description>
/em:targetApplication>

// 添加可選的信息
// creator>Federico Parodi/creator>
// creator>Stefano Verna/creator>
// creator>Nils Maier/creator>
// developer>Federico Parodi/developer>
// developer>Stefano Verna/developer>
// developer>Nils Maier/developer>
// aboutURL>chrome://dta/content/about/about.xul/aboutURL>
// iconURL>chrome://dta/skin/common/icon.png/iconURL>
// homepageURL>http://downthemall.net//homepageURL>
// optionsURL>chrome://dta/content/preferences/prefs.xul/optionsURL>

/Description>
/RDF>

chrome 詳解:
1 chrome/content/
content這個文件夾里的文件類型主要包括.js和.xul兩種
.xul文件主要用來實現界面布局的,當然也可以實現簡單的邏輯操作,建議所有邏輯都放到相應的.js里去處理,下面給出實例代碼statusbarOverlay.xul:
?xml version="1.0" encoding="UTF-8"?>

// 定義xul中用到的多語言字符串
!DOCTYPE overlay SYSTEM "chrome:// my_extension_name/locale/statusbarOverlay.dtd">

// 所有的.xul文件都要加的項,id可以隨便設置的
overlay id="bc_ext_overlay" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">

    //申明要用到的.js文件
    script src=" statusbarOverlay.js"/>   
    //申明要用到的屬性多語言字符串
    stringbundleset id="stringbundleset">
        stringbundle id="ext-strings" src="chrome:// my_extension_name/locale/ statusbarOverlay.properties"/>
    /stringbundleset>
//添加xul元素到firefox界面上
//相關xul元素特性請查看xul教程
//參考:http://developer.mozilla.org/en/XUL_Tutorial

popup id="contentAreaContextMenu">

menuitem image="chrome://my_extension_name/skin/download_all.png"  class="menuitem-iconic" id=" download_all_item"   label="download_all_text;"

insertafter="context-selectall" oncommand=" onCmdDownloadAll(event)"/>

menuitem image="chrome:// my_extension_name/skin/download_link.png" class="menuitem-iconic" id="download_link_item"  label="download_link_text;"

accesskey="download_link_text.accesskey;" insertafter="context-selectall" oncommand="onCmdDownloadSingleLink(event)"/>

menuseparator id="seperator_1" insertafter="context-selectall" />

/popup>
/overlay>

.js文件主要用來相應.xul里邏輯處理,下面給出實例代碼statusbarOverlay.js:
參考javescription腳本語法
onLoad: function()
{
    // initialization code
    this.initialized = true;
    this.strings = document.getElementById("bc_ext-strings");
    document.getElementById("contentAreaContextMenu").addEventListener("popupshowing", onContentPopupMenu, false);  
},
onCmdDownloadSingleLink: function(e)
{
alert(“download single link”);
},

onCmdDownloadAll: function(e)
{
alert(“download all link”);
}

window.addEventListener("load", function(e) { onLoad(e); }, false);


2 chrome/skin/
存放.xul中用到的圖片,屬性風格,皮膚文件等(.css,.ico,.png)

3 chrome/locale/
chrome/locale/en-US/        // 定義翻譯字符串(.dtd文件),屬性翻譯字符串(.properties文件)
chrome/locale/zh-CN/     // 定義翻譯字符串(.dtd文件),屬性翻譯字符串(.properties文件)
.dtd文件中定義要翻譯的字符串
示例代碼:
在zh-CN文件夾中的statusbarOverlay.dtd
!ENTITY download_link_text "下載此連接">
!ENTITY download_all_text "下載全部連接">
在en-US文件夾中的statusbarOverlay.dtd
!ENTITY download_link_text "download this link">
!ENTITY download_all_text "download all links">

.properties文件中保存著要保存的屬性的多語言字符
示例代碼:
在zh-CN文件夾中的statusbarOverlay.properties
extensions.{69354808-F0D7-40CC-BB5F-8C1B8F57CECC}.description=常用來下載http鏈接。
在en-US文件夾中的statusbarOverlay.properties
extensions.{69354808-F0D7-40CC-BB5F-8C1B8F57CECC}.description=it used to download http links.

defaults 詳解
4 defaults/preferences/     // 定義需要保存的信息默認值(.js文件)
.js文件中描述的是需要永久保存起來的變量的值,每次啟動時會載入.js中字段中保存的值來初始化.xul文件中的元素
示例代碼:
// 給變量定義默認值
pref("login.time","");
pref("username, "ghostjeky");
pref("extensions.{69354808-F0D7-40CC-BB5F-8C1B8F57CECC}.description", "chrome://my_extension/locale/statusbarOverlay.properties");//引用多語言屬性字符串

5 components/        // 定義擴展邏輯用的方法接口(.xpt, .dll文件)

6 開發擴展時常用的幾個擴展
DOM Inspector 主要用來檢測目標位置的元素的id,例如:你想在主菜單-》工具-》選項菜單的后面再增加一個菜單,則只要用DOM Inspector檢測出選項菜單的id為

menu_preferences,則你的xul就可以這么寫menuitem id=”myid” insertafter=” menu_preferences” label=”mymenuitem”/>
下載地址:https://addons.mozilla.org/zh-CN/firefox/addon/6622
Extension Developer's Extension 主要用來測試你寫的那段javascript代碼是不是能夠正確執行,預覽xul代碼是不是你想要的布局.
在about:config中設置(只有安裝了這個擴展才有的配置項)
browser.dom.window.dump.enabled  = true //允許使用 dump() 語句向標準控制臺輸出信息,真正能看到dump()語句的輸出還有使用-console參數啟動firefox
下載地址:https://addons.mozilla.org/zh-CN/firefox/addon/7434
Javascript debugger 主要用來調試js代碼用的,但要能在里面找到你寫的js文件前提是你的js已經正確加載了,先將Debug菜單下面的Exclude Browser Files前面的勾去掉
下載地址:https://addons.mozilla.org/zh-CN/firefox/addon/216
Firebug 聽很多人說很好用 調試js,查找錯誤,但我一直沒有領略到它的好處,只是用來查找js的錯誤
下載地址:https://addons.mozilla.org/zh-CN/firefox/addon/1843

標簽:日照 山南 防城港 定州 宜賓 內蒙古 巴彥淖爾 96

巨人網絡通訊聲明:本文標題《firefox 擴展開發技巧》,本文關鍵詞  firefox,擴展,開發,技巧,firefox,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《firefox 擴展開發技巧》相關的同類信息!
  • 本頁收集關于firefox 擴展開發技巧的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    欧美日韩国产小视频在线观看| 国产日韩欧美a| 日韩视频免费观看高清在线视频| 亚洲精品欧美在线| 色综合久久综合| 亚洲人成在线观看一区二区| 国产成人亚洲综合a∨婷婷图片| 日韩免费观看高清完整版| 蜜臀av性久久久久蜜臀aⅴ流畅| 欧美一区二区女人| 国内精品嫩模私拍在线| 国产午夜亚洲精品羞羞网站| 成人免费不卡视频| 亚洲一区二区av在线| 日韩欧美亚洲国产另类| 国产精品一二三四五| 国产精品久久久久久久蜜臀| 在线一区二区视频| 六月丁香婷婷久久| 国产视频一区在线播放| 在线一区二区三区| 韩国精品主播一区二区在线观看| 国产亚洲欧美日韩日本| 欧美专区日韩专区| 国产麻豆成人精品| 亚洲黄色小视频| 亚洲精品在线免费播放| 精品免费视频.| 黄页视频在线91| 一区二区在线观看视频| 日韩一级片网站| 91一区在线观看| 毛片av中文字幕一区二区| 国产精品福利影院| 欧美成人一区二区三区片免费| 不卡一区在线观看| 精品亚洲国内自在自线福利| 一区二区三区在线视频观看58 | 欧美人xxxx| 国产老女人精品毛片久久| 亚洲国产欧美在线人成| 久久久九九九九| 91精品国产高清一区二区三区 | 亚洲va天堂va国产va久| 2014亚洲片线观看视频免费| 欧美日韩国产在线播放网站| 大陆成人av片| 国产麻豆精品一区二区| 久草中文综合在线| 日本视频一区二区三区| 亚洲va欧美va人人爽午夜| 亚洲欧美日韩国产中文在线| 国产精品欧美精品| 国产精品国产馆在线真实露脸| 欧美videos大乳护士334| 欧美丰满少妇xxxbbb| 欧美又粗又大又爽| 在线视频欧美精品| 91啪在线观看| 一本久道中文字幕精品亚洲嫩| 成人黄色综合网站| 国产成人欧美日韩在线电影| 狠狠久久亚洲欧美| 国产美女av一区二区三区| 国产在线观看一区二区 | 青青草91视频| 日韩精品免费视频人成| 奇米影视在线99精品| 视频在线观看国产精品| 免费久久99精品国产| 蜜臀久久99精品久久久久宅男| 日本麻豆一区二区三区视频| 蜜臀av性久久久久av蜜臀妖精| 老司机免费视频一区二区| 国产精品综合一区二区三区| 国产精品一区在线观看你懂的| 国内精品久久久久影院色| 国内外成人在线视频| 国产高清不卡二三区| a亚洲天堂av| 在线一区二区三区四区五区 | 欧美日韩成人在线一区| 欧美日韩一区二区电影| 91精品国产91久久综合桃花 | 久久精品一区八戒影视| 久久女同精品一区二区| 亚洲免费av高清| 日韩成人一区二区三区在线观看| 韩国av一区二区三区四区| 91在线看国产| 日韩一区二区在线免费观看| 久久久久久久av麻豆果冻| 国产精品麻豆视频| 亚洲18色成人| 国产黄色精品视频| 欧美日韩国产精选| 久久网站最新地址| 一级日本不卡的影视| 国产美女娇喘av呻吟久久| 91香蕉视频在线| 日韩亚洲欧美在线| 亚洲色图制服丝袜| 久久91精品久久久久久秒播| 色综合婷婷久久| 欧美一区二区三区日韩视频| 中文字幕亚洲成人| 韩国欧美国产1区| 欧美日韩精品一区视频| 国产精品色哟哟| 韩国精品免费视频| 777a∨成人精品桃花网| 国产精品乱码人人做人人爱| 三级不卡在线观看| 色噜噜久久综合| 国产欧美日韩在线看| 精品亚洲porn| 欧美精品aⅴ在线视频| 国产精品免费人成网站| 男女男精品网站| 欧美午夜精品一区二区三区| 国产欧美精品一区二区三区四区| 亚洲bt欧美bt精品| 欧美三级电影在线观看| 亚洲色图制服诱惑| 成人av网址在线| 国产欧美一区二区三区在线老狼| 久久成人久久鬼色| 日韩免费视频线观看| 麻豆久久久久久| 日韩三级视频在线看| 天天亚洲美女在线视频| 欧美三级欧美一级| 视频在线观看国产精品| 欧美日本高清视频在线观看| 亚洲国产视频一区| 精品视频在线免费看| 亚洲一区二区视频在线| 欧美天堂一区二区三区| 亚洲黄色小视频| 欧美日韩一级大片网址| 亚洲va韩国va欧美va| 欧美日韩在线免费视频| 亚洲国产精品人人做人人爽| 欧美视频一区在线| 亚洲一区二区在线免费观看视频| 欧美性色黄大片| 亚洲成人免费影院| 日韩一区二区在线看| 久久99精品久久久久久| 久久九九全国免费| www.亚洲国产| 亚洲最大成人网4388xx| 91精品国产麻豆| 国产精品亚洲专一区二区三区| 欧美激情一区二区三区在线| 99视频热这里只有精品免费| 91麻豆精品国产自产在线观看一区 | 三级欧美韩日大片在线看| 在线观看一区日韩| 亚洲福利一二三区| 精品电影一区二区三区| 成人高清免费观看| 亚洲午夜一二三区视频| 日韩欧美一区二区久久婷婷| 国产91精品露脸国语对白| 一区二区三区精品视频| 欧美一区二区免费视频| aaa欧美日韩| 日本在线不卡视频| 欧美国产日韩一二三区| 欧美日韩成人一区| 国产麻豆成人传媒免费观看| 亚洲欧美另类小说| 日韩小视频在线观看专区| 国产凹凸在线观看一区二区| 亚洲黄网站在线观看| 欧美大片一区二区| 91国产精品成人| 国产精品一区2区| 日韩av二区在线播放| 亚洲视频图片小说| 国产亚洲精品超碰| 欧美一二区视频| 在线影院国内精品| 成人网页在线观看| 国产在线视视频有精品| 亚洲 欧美综合在线网络| 久久精品视频一区二区| 欧美区视频在线观看| 91美女片黄在线观看| 国产精品2024| 韩国v欧美v亚洲v日本v| 三级欧美韩日大片在线看| 亚洲日本在线视频观看| 国产亚洲欧美中文| 精品免费国产二区三区| 欧美日韩国产成人在线免费| 91农村精品一区二区在线| 国v精品久久久网| 国产精品综合视频|