Adding APIs to the navigator object

This translation is incomplete. Please help translate this article from English

بدءًا من الإصدار 9.0 من Gecko (Firefox 9.0 / Thunderbird 9.0 / SeaMonkey 2.6) ، يمكنك بسهولة إضافة واجهات برمجة تطبيقات جديدة إلى كائن window.navigator باستخدام إدارة الفئات. ما عليك سوى إضافة إدخال إلى فئة "JavaScript-navigator-property".

يجب تطبيق الكائن كمكون XPCOM. تتطلب كل طريقة أدناه لإضافة كائنات جديدة إلى كائن المستكشف أن يكون الكائن الجديد مكون XPCOM مسجل. يمكنك أن تقرأ عن إنشاء وتسجيل مكونات XPCOM في JavaScript .

إضافة كائن برمجيًا إلى الملاح

var categoryManager = Components.classes ["@ mozilla.org/categorymanager؛1"]
                      .getService (Components.interfaces.nsICategoryManager) ؛

categoryManager.addCategoryEntry ("JavaScript-navigator-property"، "myApi"،
                      MY_CONTRACT_ID, false, true);

This adds a new object, myApi, to the window.navigator object. The newly added object is a reference to the component specified by the contract ID MY_CONTRACT_ID. You can learn more about Contract IDs are unique text identifiers for XPCOM components.

Using a manifest to add an object to navigator

You can also add an object to the window.navigator object by using the chrome manifest of an add-on:

component {ffffffff-ffff-ffff-ffff-ffffffffffff} MyComponent.js
contract @mozilla.org/mycomponent;1 {ffffffff-ffff-ffff-ffff-ffffffffffff}
category JavaScript-navigator-property myComponent @mozilla.org/mycomponent;1

قم بإنشاء GUID واستبدال أقسام "ffff" في كل من سطور المكون والعقد بـ GUID الخاص بك.

هذا يضيف واجهة برمجة تطبيقات جديدة myComponent، إلى كائن الملاح ، والذي يمكنك الوصول إليه بعد ذلك باسم navigator.myComponent.

مثال من العالم الحقيقي

يمكنك مشاهدة مثال على كيفية استخدام ذلك في Firefox من خلال إلقاء نظرة على كيفية mozAppsتنفيذ واجهة برمجة التطبيقات:

أنظر أيضا