日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

火狐拓展开发 基础知识

發布時間:2023/11/27 生活经验 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 火狐拓展开发 基础知识 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

平時經常碰到一些零碎的知識,或者其他什么好文章/知識點/插件/庫等等,因為實在太多書簽已插亂...于是想著干脆寫個火狐小add-on。

首先找到了這里ADD-ON SDK:

Using the Add-on SDK you can create Firefox add-ons using standard Web technologies: JavaScript, HTML, and CSS. The SDK includes JavaScript APIs which you can use to create add-ons, and tools for creating, running, testing, and packaging add-ons.

使用Add-on SDK你可以用標準的web技術——javascript,html,css開發火狐add-ons。SDK包含了js API,供你創建add-ons,以及創建、運行、測試、打包add-on的工具(即cfx命令行,cfx run,cfx test,cfx xpi等)。

開發小組件(add-on,附件組件)過程中發現僅使用js,html,能夠完成的功能有限,尤其沒有辦法直接使用火狐的一些默認用戶界面,右鍵菜單(反正我是還沒有找到調用方法)。結果自己用html拼了一個出來,雖說其他一些圖形界面也能夠寫出來,但有點繞了遠路的感覺。做個小東西自己用用的話,差不多可以,但想增加一些比較高級(?)的功能的話會比較困難。以下是正文,火狐拓展開發介紹。

知識均來源于XUL|MDN。主要是一些概念的介紹。

?

Firefox and other Mozilla applications can be seen as composed of two different parts: a user interface layer that is distinct for each project, and a common platform on top of which the interface layer is built. The user interface is built with technology known as XUL, and the platform is known as XULRunner.

火狐以及其他MOzilla應用可以看作是由兩個部分組成:用戶界面層——每個項目各不相同,以及一個共同的平臺,界面均建立于它之上。用戶界面使用XUL技術,平臺則為XULRunner.

?

在介紹XUL與XULRunner之前,先了解一下add-on(附加組件)和extension(拓展)的區別:

An extension is a small application that adds something new to one or more Mozilla applications.

所有拓展都是附加組件,但附加組件也可以是主題、插件、或是語言包等。XUL教程主要講的是關于拓展開發,而主題、語言包的開發與它十分相似。而插件則完全不同,在教程里不會提到。

Extensions now exist in 3 different forms: Add-ons SDK extensions (also known as Jetpacks), bootstrapped extensions and traditional extensions. If you're only getting started developing add-ons, the Add-ons SDK provides a great way to quickly create simple ones and build on them. This tutorial focuses on traditional extensions, which are created differently. Bootstrapped extensions are a step above traditional ones in complexity, so you should go through this tutorial before giving them a try.

拓展現在有三種形式:Add-ons SDK 拓展、bootstrapped拓展以及傳統拓展。如果你是剛剛開始開發組件,add-on SDk提供了快速開發簡單組件的方法。XUL教程主要關注傳統拓展的開發,這也將相對比較復雜。bootstrapped拓展在難度上將更上一層,在嘗試之前,建議先看完此教程。

?

大致就是這么一回事了。

?

XUL(XML User Interface Language):Mozilla用于創建類似firefox之類應用的用戶界面 的基于XML的語言。

XUL十分強大。在用html邊看教程邊寫代碼時遇到的問題,XUL輕輕松松就解決了。

比如:

?

比如:drag and drop

被拖拽元素的一個半透明的表現將隨著鼠標移動。放置(drop)位置可以是另外一個應用。可以設置拖動時顯示的圖片,拖動效果:被拖動元素是copy/move/link.

?

也就是說平時用到的效果基本都能自己調用~提供了很多command,右鍵菜單寫個<menu></menu>,加上事件就好,一些默認事件可以調用cmd,cmd_copy,cmd_paste等。參見List of Commands.

?

順便說下add-on sdk.

開發語言:html,js,css,以及sdk提供的接口。

開發方法:限于目前我的了解。

主要文件:main.js.負責運行add-on的主腳本語言。

?負責與html/panel/widget等頁面內容交互的腳本。比如訪問打開的html頁面,一般需建一個page-mod對象。通過該對象與其對應的contentScriptFile:XX.js,之間通信(sdk提供的通信接口),來實現與頁面的交互。widget,panel同理。

?

以上。

轉載于:https://www.cnblogs.com/cydin/p/3353196.html

總結

以上是生活随笔為你收集整理的火狐拓展开发 基础知识的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。