الوصف
استخدِم واجهة برمجة التطبيقات chrome.tabs
للتفاعل مع نظام علامات التبويب في المتصفّح. يمكنك استخدام واجهة برمجة التطبيقات هذه لإنشاء علامات التبويب وتعديلها وإعادة ترتيبها في المتصفّح.
لا توفّر واجهة برمجة التطبيقات Tabs API ميزات لمعالجة علامات التبويب وإدارتها فقط، بل يمكنها أيضًا رصد لغة علامة التبويب والتقاط لقطة شاشة و التواصل مع نصوص محتوى علامة التبويب.
الأذونات
لا تتطلّب معظم الميزات أي أذونات لاستخدامها. على سبيل المثال: إنشاء علامة تبويب جديدة وإعادة تحميل علامة تبويب والانتقال إلى عنوان URL آخر وغير ذلك.
هناك ثلاثة أذونات يجب أن يعرفها المطوّرون عند التعامل مع Tabs API.
- إذن "علامات التبويب"
لا يمنح هذا الإذن إمكانية الوصول إلى مساحة الاسم
chrome.tabs
. بدلاً من ذلك، فإنه يمنح الإضافة إمكانية الاتصال بـtabs.query()
في أربع سمات حساسة في حالاتtabs.Tab
:url
وpendingUrl
وtitle
وfavIconUrl
.{ "name": "My extension", ... "permissions": [ "tabs" ], ... }
- أذونات المضيف
تسمح أذونات المضيف للإضافة بقراءة واستعلام عن السمات الأربعة المُهمّة
tabs.Tab
في علامة التبويب المطابقة. ويمكنهم أيضًا التفاعل مباشرةً مع علامات التبويب المطابقة باستخدام طرق مثلtabs.captureVisibleTab()
،tabs.executeScript()
،tabs.insertCSS()
،tabs.removeCSS()
.{ "name": "My extension", ... "host_permissions": [ "http://*/*", "https://*/*" ], ... }
- الإذن "activeTab"
activeTab
يمنح الإضافة إذن مضيف مؤقتًا للعلامة التبويب الحالية في استجابةً لطلب من المستخدم. على عكس أذونات المضيف، لا يؤديactiveTab
إلى ظهور أي تحذيرات.{ "name": "My extension", ... "permissions": [ "activeTab" ], ... }
حالات الاستخدام
توضّح الأقسام التالية بعض حالات الاستخدام الشائعة.
فتح صفحة إضافة في علامة تبويب جديدة
من الشائع أن تفتح الإضافات صفحة إعدادات في علامة تبويب جديدة عند تثبيت الإضافة. يوضّح المثال التالي كيفية إجراء ذلك.
background.js:
chrome.runtime.onInstalled.addListener(({reason}) => {
if (reason === 'install') {
chrome.tabs.create({
url: "onboarding.html"
});
}
});
الحصول على علامة التبويب الحالية
يوضّح هذا المثال كيف يمكن لعامل الخدمة في الإضافة استرداد علامة التبويب النشطة من النافذة التي يتم التركيز عليها حاليًا (أو النافذة التي تم التركيز عليها مؤخرًا، إذا لم يتم التركيز على أي نوافذ Chrome). يمكن اعتبار هذا العنصر عادةً علامة التبويب الحالية للمستخدم.
async function getCurrentTab() {
let queryOptions = { active: true, lastFocusedWindow: true };
// `tab` will either be a `tabs.Tab` instance or `undefined`.
let [tab] = await chrome.tabs.query(queryOptions);
return tab;
}
function getCurrentTab(callback) {
let queryOptions = { active: true, lastFocusedWindow: true };
chrome.tabs.query(queryOptions, ([tab]) => {
if (chrome.runtime.lastError)
console.error(chrome.runtime.lastError);
// `tab` will either be a `tabs.Tab` instance or `undefined`.
callback(tab);
});
}
كتم صوت علامة التبويب المحدّدة
يوضّح هذا المثال كيف يمكن للإضافة إيقاف الصوت أو تشغيله في علامة تبويب معيّنة.
async function toggleMuteState(tabId) {
const tab = await chrome.tabs.get(tabId);
const muted = !tab.mutedInfo.muted;
await chrome.tabs.update(tabId, {muted});
console.log(`Tab ${tab.id} is ${muted ? "muted" : "unmuted"}`);
}
function toggleMuteState(tabId) {
chrome.tabs.get(tabId, async (tab) => {
let muted = !tab.mutedInfo.muted;
await chrome.tabs.update(tabId, { muted });
console.log(`Tab ${tab.id} is ${ muted ? "muted" : "unmuted" }`);
});
}
نقل علامة التبويب الحالية إلى الموضع الأول عند النقر عليها
يوضّح هذا المثال كيفية نقل علامة تبويب أثناء عملية سحب قد تكون جارية أو لا. على الرغم من أنّ هذا المثال
يستخدم chrome.tabs.move
، يمكنك استخدام نمط الانتظار نفسه للمكالمات الأخرى التي تعدّل علامات التبويب أثناء
تنفيذ عملية سحب.
chrome.tabs.onActivated.addListener(moveToFirstPosition);
async function moveToFirstPosition(activeInfo) {
try {
await chrome.tabs.move(activeInfo.tabId, {index: 0});
console.log("Success.");
} catch (error) {
if (error == "Error: Tabs cannot be edited right now (user may be dragging a tab).") {
setTimeout(() => moveToFirstPosition(activeInfo), 50);
} else {
console.error(error);
}
}
}
chrome.tabs.onActivated.addListener(moveToFirstPositionMV2);
function moveToFirstPositionMV2(activeInfo) {
chrome.tabs.move(activeInfo.tabId, { index: 0 }, () => {
if (chrome.runtime.lastError) {
const error = chrome.runtime.lastError;
if (error == "Error: Tabs cannot be edited right now (user may be dragging a tab).") {
setTimeout(() => moveToFirstPositionMV2(activeInfo), 50);
} else {
console.error(error);
}
} else {
console.log("Success.");
}
});
}
تمرير رسالة إلى نص محتوى علامة تبويب محدّدة
يوضّح هذا المثال كيف يمكن لعامل خدمة إحدى الإضافات التواصل مع نصوص برمجية للمحتوى في علامات تبويب معيّنة للمتصفّح باستخدام tabs.sendMessage()
.
function sendMessageToActiveTab(message) {
const [tab] = await chrome.tabs.query({ active: true, lastFocusedWindow: true });
const response = await chrome.tabs.sendMessage(tab.id, message);
// TODO: Do something with the response.
}
أمثلة على الإضافات
لمزيد من العروض التوضيحية لإضافات Tabs API، يمكنك الاطّلاع على أيّ من العناصر التالية:
الأنواع
MutedInfo
حالة كتم صوت علامة التبويب وسبب تغيير الحالة الأخير
أماكن إقامة
-
extensionId
سلسلة اختيارية
رقم تعريف الإضافة التي غيّرت حالة كتم الصوت لا يتم ضبط هذا الإعداد إذا لم تكن إحدى الإضافات هي سبب آخر تغيير في حالة كتم الصوت.
-
تم كتم الصوت
قيمة منطقية
ما إذا تم كتم صوت علامة التبويب (منع تشغيل الصوت) قد يتم كتم صوت علامة التبويب حتى إذا لم يتم تشغيل الصوت أو إذا لم يكن الصوت قيد التشغيل حاليًا. يشير ذلك إلى ما إذا كان مؤشر الصوت "مكتوم" يظهر.
-
السبب
MutedInfoReason اختياري
سبب كتم صوت علامة التبويب أو إزالة كتم صوتها لا يتم ضبطه إذا لم يتم تغيير حالة كتم صوت علامة التبويب مطلقًا.
MutedInfoReason
حدث أدّى إلى تغيير حالة كتم الصوت
التعداد
"user"
ضبط حالة كتم الصوت من خلال إجراء إدخال المستخدم
"capture"
تم بدء عملية تسجيل علامة التبويب، ما أدى إلى تغيير حالة كتم الصوت.
"extension"
ضبط حالة كتم الصوت من خلال إضافة تم تحديدها من خلال حقل extensionId
Tab
أماكن إقامة
-
نشطة
قيمة منطقية
ما إذا كانت علامة التبويب نشطة في نافذتها. ولا يعني ذلك بالضرورة أنّ التركيز على النافذة.
-
تطبيق audible
قيمة منطقية اختيارية
Chrome 45 والإصدارات الأحدثما إذا كانت علامة التبويب قد أصدرت صوتًا خلال الثواني القليلة الماضية (ولكن قد لا يتم سماعها إذا تم كتم صوتها أيضًا). يعادل ذلك ما إذا كان مؤشر "صوت مكبّر الصوت" يظهر.
-
autoDiscardable
قيمة منطقية
Chrome 54 والإصدارات الأحدثيمكنك اختيار ما إذا كان يمكن للمتصفّح تجاهل علامة التبويب تلقائيًا عند انخفاض الموارد.
-
تم التجاهل
قيمة منطقية
Chrome 54 والإصدارات الأحدثما إذا كان سيتم تجاهل علامة التبويب علامة التبويب التي تم تجاهلها هي علامة تبويب تم إلغاء تحميل محتواها من الذاكرة، ولكنها لا تزال مرئية في شريط علامات التبويب. ويتم إعادة تحميل محتواه في المرة التالية التي يتم فيها تفعيله.
-
favIconUrl
سلسلة اختيارية
عنوان URL للرمز المفضّل للعلامة. لا تظهر هذه السمة إلا إذا كان بيان الإضافة يتضمّن الإذن
"tabs"
. وقد تكون أيضًا سلسلة فارغة في حال تحميل علامة التبويب. -
مجمّد
قيمة منطقية
في انتظار المراجعةما إذا كانت علامة التبويب متوقفة لا يمكن لعلامة التبويب المجمّدة تنفيذ المهام، بما في ذلك معالجات الأحداث أو الموقّتات. وهي تظهر في شريط علامات التبويب ويتم تحميل محتواها في الذاكرة. ويتم إلغاء تجميده عند التفعيل.
-
groupId
الرقم
الإصدار 88 من Chrome والإصدارات الأحدثرقم تعريف المجموعة التي تنتمي إليها علامة التبويب.
-
الطول
الرقم اختياري
ارتفاع علامة التبويب بالبكسل.
-
بارزة
قيمة منطقية
ما إذا كانت علامة التبويب مميّزة
-
id
الرقم اختياري
معرّف علامة التبويب. تكون أرقام تعريف علامات التبويب فريدة داخل جلسة المتصفّح. في بعض الحالات، قد لا يتم تخصيص رقم تعريف لعلامة تبويب. على سبيل المثال، عند إجراء طلبات بحث في علامات التبويب الخارجية باستخدام واجهة برمجة تطبيقات
sessions
، قد يتوفّر معرّف جلسة في هذه الحالة. يمكن أيضًا ضبط رقم تعريف علامة التبويب علىchrome.tabs.TAB_ID_NONE
للتطبيقات ونوافذ أدوات المطوّرين. -
وضع التصفّح المتخفي
قيمة منطقية
ما إذا كانت علامة التبويب في نافذة تصفّح متخفٍ
-
المؤشر
الرقم
الفهرس المبدوء من الصفر لعلامة التبويب ضمن نافذتها
-
lastAccessed
الرقم
Chrome 121 والإصدارات الأحدثآخر مرة تم فيها الوصول إلى علامة التبويب بالتنسيق عدد المللي ثانية منذ بدء حساب الوقت
-
mutedInfo
MutedInfo اختياري
الإصدار 46 من Chrome والإصدارات الأحدثحالة كتم صوت علامة التبويب وسبب تغيير الحالة الأخير
-
openerTabId
رقم اختياري
رقم تعريف علامة التبويب التي فتحت علامة التبويب هذه، إن توفّرت. لا تتوفّر هذه السمة إلا إذا كانت علامة التبويب التي فتحت التطبيق لا تزال متوفّرة.
-
pendingUrl
سلسلة اختيارية
الإصدار 79 من Chrome أو الإصدارات الأحدثعنوان URL الذي تنتقل إليه علامة التبويب قبل أن يتم تأكيده. لا تتوفّر هذه السمة إلا إذا كان بيان الإضافة يتضمّن إذن
"tabs"
وكانت هناك عملية تنقّل في انتظار المراجعة. -
تم تثبيته
قيمة منطقية
ما إذا كانت علامة التبويب قد تم تثبيتها
-
تم تحديد هذا الخيار
قيمة منطقية
تمّ إيقافه نهائيًايُرجى استخدام
tabs.Tab.highlighted
.ما إذا كانت علامة التبويب محدّدة
-
sessionId
سلسلة اختيارية
رقم تعريف الجلسة المستخدَم للتعريف بشكلٍ فريد عن علامة تبويب تم الحصول عليها من واجهة برمجة تطبيقات
sessions
. -
status
TabStatus اختياري
حالة تحميل علامة التبويب
-
title
سلسلة اختيارية
عنوان علامة التبويب لا تظهر هذه السمة إلا إذا كان بيان الإضافة يتضمّن الإذن
"tabs"
. -
url
سلسلة اختيارية
آخر عنوان URL تمّ تأكيده للإطار الرئيسي لعلامة التبويب. لا تظهر هذه السمة إلا إذا كان بيان الإضافة يتضمّن الإذن
"tabs"
، وقد تكون سلسلة فارغة إذا لم يتمّ تأكيد علامة التبويب بعد. راجِع أيضًاTab.pendingUrl
. -
العرض
رقم اختياري
عرض علامة التبويب بالبكسل.
-
windowId
الرقم
رقم تعريف النافذة التي تحتوي على علامة التبويب
TabStatus
حالة تحميل علامة التبويب
Enum
"unloaded"
"جارٍ التحميل"
"مكتملة"
WindowType
نوع النافذة.
التعداد
"عادي"
"popup"
"panel"
"app"
"devtools"
ZoomSettings
تحدِّد كيفية معالجة تغييرات التكبير/التصغير في علامة تبويب ونطاقها.
أماكن إقامة
-
defaultZoomFactor
رقم اختياري
Chrome 43 والإصدارات الأحدثتُستخدَم لعرض مستوى التكبير أو التصغير التلقائي لعلامة التبويب الحالية في طلبات الاتصال بـ tabs.getZoomSettings.
-
الوضع
ZoomSettingsMode اختياري
يحدِّد كيفية التعامل مع تغييرات التصغير/التكبير، أي الكيان المسؤول عن تغيير حجم الصفحة الفعلي. القيمة التلقائية هي
automatic
. -
نطاق
ZoomSettingsScope اختياري
يحدِّد ما إذا كانت تغييرات التصغير/التكبير تبقى سارية في مصدر الصفحة أو تسري فقط في علامة التبويب هذه. الإعداد التلقائي هو
per-origin
في وضعautomatic
وper-tab
في غير ذلك.
ZoomSettingsMode
يحدِّد كيفية التعامل مع تغييرات التصغير/التكبير، أي الكيان المسؤول عن تغيير حجم الصفحة الفعلي. القيمة التلقائية هي automatic
.
التعداد
"تلقائي"
يعالج المتصفّح تغييرات التكبير/التصغير تلقائيًا.
"يدوي"
يلغى المعالجة التلقائية لتغييرات التكبير/التصغير. سيظلّ يتم إرسال الحدث onZoomChange
، وتكون مسؤولية الإضافة هي الاستماع إلى هذا الحدث وتغيير حجم الصفحة يدويًا. لا يتيح هذا الوضع التكبير/التصغير بنسبة per-origin
، وبالتالي يتجاهل إعداد التكبير/التصغير بنسبة scope
ويفترض أنّه per-tab
.
"معطل"
لإيقاف جميع عمليات التكبير/التصغير في علامة التبويب تعود علامة التبويب إلى مستوى التكبير أو التصغير التلقائي، ويتم تجاهل جميع التغييرات التي تمّت محاولة إجراؤها على مستوى التكبير أو التصغير.
ZoomSettingsScope
لتحديد ما إذا كانت تغييرات التكبير/التصغير ستستمر في مصدر الصفحة أم أنها ستدخل حيز التنفيذ في علامة التبويب هذه فقط، ويتم ضبطها تلقائيًا على per-origin
عند استخدام الوضع automatic
، وper-tab
في الحالات الأخرى.
Enum
"حسب المصدر"
تبقى تغييرات التكبير/التصغير محفوظة في مصدر الصفحة التي تم تكبيرها، أي أنّه يتم تكبير جميع علامات التبويب الأخرى التي يتم الانتقال إليها من هذا المصدر نفسه أيضًا. إضافةً إلى ذلك، يتم حفظ تغييرات التكبير/التصغير per-origin
مع المصدر، ما يعني أنّه عند الانتقال إلى صفحات أخرى في المصدر نفسه، يتم تكبيرها جميعًا باستخدام عامل التكبير نفسه. لا يتوفّر نطاق per-origin
إلا في وضع automatic
.
"لكل علامة تبويب"
لا تسري تغييرات التكبير/التصغير إلا في علامة التبويب هذه، ولا تؤثّر تغييرات التكبير/التصغير في علامات التبويب الأخرى في التكبير/التصغير في علامة التبويب هذه. بالإضافة إلى ذلك، تتم إعادة ضبط التغييرات في per-tab
التكبير/التصغير عند التنقّل، حيث يؤدي التنقّل في علامة تبويب إلى تحميل الصفحات دائمًا باستخدام عوامل per-origin
التكبير/التصغير.
أماكن إقامة
MAX_CAPTURE_VISIBLE_TAB_CALLS_PER_SECOND
الحد الأقصى لعدد المرات التي يمكن فيها استدعاء captureVisibleTab
في الثانية captureVisibleTab
باهظ الثمن ويجب عدم الاتصال به كثيرًا.
القيمة
2
TAB_ID_NONE
معرّف يمثّل عدم توفّر علامة تبويب في المتصفّح
القيمة
-1
TAB_INDEX_NONE
فهرس يمثّل عدم توفّر فهرس علامة تبويب في tab_strip
القيمة
-1
الطُرق
captureVisibleTab()
chrome.tabs.captureVisibleTab(
windowId?: number,
options?: ImageDetails,
callback?: function,
)
لالتقاط المنطقة المرئية لعلامة التبويب النشطة حاليًا في النافذة المحدّدة لاستدعاء هذه الطريقة، يجب أن تحصل الإضافة على إذن <all_urls> أو إذن activeTab. بالإضافة إلى المواقع الإلكترونية التي يمكن للإضافات الوصول إليها بشكلٍ طبيعي، تسمح هذه الطريقة للإضافات بتسجيل المواقع الإلكترونية الحسّاسة التي تكون محظورة بخلاف ذلك، بما في ذلك صفحات chrome:-scheme وصفحات الإضافات الأخرى وعناوين URL الخاصة بـ data:. ولا يمكن تسجيل هذه المواقع الإلكترونية الحسّاسة إلا باستخدام إذن activeTab. قد يتم التقاط عناوين URL للملفات فقط إذا تم منح الإضافة الإذن بالوصول إلى الملف.
المعلمات
-
windowId
الرقم اختياري
النافذة المستهدَفة الإعداد التلقائي هو النافذة الحالية.
-
الخيارات
ImageDetails اختيارية
-
ردّ الاتصال
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:(dataUrl: string) => void
-
dataUrl
سلسلة
عنوان URL للبيانات الذي يشفِّر صورة للمنطقة المرئية من علامة التبويب التي تم التقاطها يمكن تعيينه إلى سمة src لعنصر
img
في HTML لعرضه.
-
المرتجعات
-
Promise<string>
الإصدار 88 من Chrome والإصدارات الأحدثتكون الوعود متاحة في الإصدار Manifest V3 والإصدارات الأحدث، ولكن يتم توفير طلبات الاستدعاء لأجل التوافق مع الإصدارات القديمة. ولا يمكنك استخدام كليهما في طلب الدالة نفسه. يتم حلّ الوعد بالنوع نفسه الذي يتم تمريره إلى دالة الاستدعاء.
connect()
chrome.tabs.connect(
tabId: number,
connectInfo?: object,
)
يتم ربطها بنصوص المحتوى في علامة التبويب المحدّدة. يتم تشغيل الحدث runtime.onConnect
في كل نص برمجي للمحتوى يتم تشغيله في علامة التبويب المحدّدة للإضافات الحالية. لمزيد من التفاصيل، يُرجى الاطّلاع على الرسائل في محتوى Script.
المعلمات
-
tabId
الرقم
-
connectInfo
العنصر اختياري
-
documentId
سلسلة اختيارية
Chrome 106 والإصدارات الأحدثافتح منفذًا إلى مستند معيّن تم التعرّف عليه من خلال
documentId
بدلاً من جميع الإطارات في علامة التبويب. -
frameId
رقم اختياري
افتح منفذًا إلى إطار معيّن يحدّده
frameId
بدلاً من جميع الإطارات في علامة التبويب. -
الاسم
سلسلة اختيارية
يتم تمريرها إلى onConnect لنصوص المحتوى التي تستمع إلى حدث الاتصال.
-
المرتجعات
-
منفذ يمكن استخدامه للتواصل مع النصوص البرمجية للمحتوى قيد التشغيل في علامة التبويب المحددة. يتم تنشيط الحدث
runtime.Port
للمنفذ إذا تم إغلاق علامة التبويب أو لم تكن متوفّرة.
create()
chrome.tabs.create(
createProperties: object,
callback?: function,
)
لإنشاء علامة تبويب جديدة.
المعلمات
-
createProperties
عنصر
-
نشطة
منطقي اختياري
ما إذا كان يجب أن تصبح علامة التبويب علامة التبويب النشطة في النافذة لا يؤثّر هذا الخيار في ما إذا كان يتم التركيز على النافذة (راجِع
windows.update
). القيمة التلقائية هيtrue
. -
المؤشر
رقم اختياري
الموضع الذي يجب أن تشغله علامة التبويب في النافذة يتم ضبط القيمة المقدَّمة بين صفر وعدد علامات التبويب في النافذة.
-
openerTabId
رقم اختياري
رقم تعريف علامة التبويب التي فتحت علامة التبويب هذه. إذا تم تحديدها، يجب أن تكون علامة التبويب المفتوحة في النافذة نفسها التي تتضمّن علامة التبويب التي تم إنشاؤها حديثًا.
-
تم تثبيته
منطقي اختياري
ما إذا كان يجب تثبيت علامة التبويب الإعداد التلقائي هو
false
-
تم تحديد هذا الخيار
منطقي اختياري
تمّ إيقافه نهائيًايُرجى استخدام نشِط.
ما إذا كان يجب أن تصبح علامة التبويب هي علامة التبويب المحدّدة في النافذة القيمة التلقائية هي
true
. -
url
سلسلة اختيارية
عنوان URL الذي يتم الانتقال إليه في البداية من خلال علامة التبويب. يجب أن تتضمّن عناوين URL المؤهَّلة بالكامل مخطّطًا (أي "http://www.google.com"، وليس "www.google.com"). ترتبط عناوين URL النسبية بالصفحة الحالية داخل الإضافة. يتم ضبطها تلقائيًا على صفحة "علامة تبويب جديدة".
-
windowId
رقم اختياري
النافذة التي سيتم إنشاء علامة التبويب الجديدة فيها يتم استخدام القيمة التلقائية على النافذة الحالية.
-
-
ردّ الاتصال
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:(tab: Tab) => void
-
tab
علامة التبويب التي تم إنشاؤها
-
المرتجعات
-
وعد<مفتاح التبويب>
الإصدار 88 من Chrome والإصدارات الأحدثتكون الوعود متاحة في الإصدار Manifest V3 والإصدارات الأحدث، ولكن يتم توفير طلبات الاستدعاء لأجل التوافق مع الإصدارات القديمة. ولا يمكنك استخدام كليهما في طلب الدالة نفسه. يتم حلّ الوعد بالنوع نفسه الذي يتم تمريره إلى دالة الاستدعاء.
detectLanguage()
chrome.tabs.detectLanguage(
tabId?: number,
callback?: function,
)
ترصد هذه الميزة اللغة الأساسية للمحتوى في علامة تبويب.
المعلمات
-
tabId
رقم اختياري
يتم ضبط الإعدادات التلقائية على علامة التبويب النشطة في النافذة الحالية.
-
ردّ الاتصال
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:(language: string) => void
-
language
سلسلة
رمز لغة وفقًا لمعيار ISO، مثل
en
أوfr
للحصول على قائمة كاملة باللغات المتوافقة مع هذه الطريقة، راجِع kLanguageInfoTable. يتم التحقّق من العمود الثاني إلى الرابع وعرض أول قيمة غير فارغة، باستثناء الصينية المبسّطة التي يتم عرضzh-CN
فيها. للغة غير معروفة/غير معروفة، يتم عرضund
.
-
المرتجعات
-
Promise<string>
الإصدار 88 من Chrome أو الإصدارات الأحدثتكون الوعود متاحة في الإصدار Manifest V3 والإصدارات الأحدث، ولكن يتم توفير طلبات الاستدعاء لأجل التوافق مع الإصدارات القديمة. ولا يمكنك استخدام كليهما في طلب الدالة نفسه. يتم حلّ الوعد بالنوع نفسه الذي يتم تمريره إلى دالة الاستدعاء.
discard()
chrome.tabs.discard(
tabId?: number,
callback?: function,
)
يُلغي علامة تبويب من الذاكرة. ستظل علامات التبويب التي تم تجاهلها مرئية على شريط علامات التبويب وتتم إعادة تحميلها عند تفعيلها.
المعلمات
-
tabId
الرقم اختياري
رقم تعريف علامة التبويب المطلوب تجاهلها في حال تحديدها، يتم تجاهل علامة التبويب ما لم تكن نشطة أو تم تجاهلها من قبل. في حال تم حذفها، يتجاهل المتصفح علامة التبويب الأقل أهمية. يمكن أن يتعذّر تنفيذ ذلك إذا لم تكن هناك علامات تبويب يمكن تجاهلها.
-
ردّ الاتصال
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:(tab?: Tab) => void
-
tab
علامة تبويب اختيارية
علامة التبويب التي تم تجاهلها، إذا تم تجاهلها بنجاح، وتكون غير محدّدة في حال أخرى
-
المرتجعات
-
Promise<Tab | undefined>
الإصدار 88 من Chrome والإصدارات الأحدثتكون الوعود متاحة في الإصدار Manifest V3 والإصدارات الأحدث، ولكن يتم توفير طلبات الاستدعاء لأجل التوافق مع الإصدارات القديمة. ولا يمكنك استخدام كليهما في طلب الدالة نفسه. يتم حلّ الوعد بالنوع نفسه الذي يتم تمريره إلى دالة الاستدعاء.
duplicate()
chrome.tabs.duplicate(
tabId: number,
callback?: function,
)
تكرار علامة تبويب
المعلمات
-
tabId
الرقم
رقم تعريف علامة التبويب المطلوب تكرارها.
-
ردّ الاتصال
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:(tab?: Tab) => void
-
tab
علامة التبويب اختيارية
تفاصيل حول علامة التبويب المكرّرة لا يحتوي عنصر
tabs.Tab
علىurl
وpendingUrl
وtitle
وfavIconUrl
إذا لم يتم طلب إذن"tabs"
.
-
المرتجعات
-
Promise<Tab | undefined>
الإصدار 88 من Chrome والإصدارات الأحدثتكون الوعود متاحة في الإصدار Manifest V3 والإصدارات الأحدث، ولكن يتم توفير طلبات الاستدعاء لأجل التوافق مع الإصدارات القديمة. ولا يمكنك استخدام كليهما في طلب الدالة نفسه. يتم حلّ الوعد بالنوع نفسه الذي يتم تمريره إلى دالة الاستدعاء.
executeScript()
chrome.tabs.executeScript(
tabId?: number,
details: InjectDetails,
callback?: function,
)
تم استبداله بـ scripting.executeScript
في إصدار Manifest V3.
يتم إدخال رمز JavaScript في صفحة. لمعرفة التفاصيل، يُرجى الاطّلاع على قسم الاستيراد الآلي في مستند نصوص المحتوى.
المعلمات
-
tabId
رقم اختياري
رقم تعريف علامة التبويب التي سيتم تشغيل النص البرمجي فيها، ويتم ضبطه تلقائيًا على علامة التبويب النشطة في النافذة الحالية.
-
التفاصيل
تفاصيل النص البرمجي المطلوب تشغيله. يجب ضبط رمز الملف أو خاصيته، ولكن لا يمكن ضبط كليهما في الوقت نفسه.
-
ردّ الاتصال
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:(result?: any[]) => void
-
نتيجة
أيّ[] اختيارية
نتيجة النص البرمجي في كل إطار تمّت حقنه
-
المرتجعات
-
Promise<any[] | undefined>
الإصدار 88 من Chrome أو الإصدارات الأحدثتكون الوعود متاحة في الإصدار Manifest V3 والإصدارات الأحدث، ولكن يتم توفير طلبات الاستدعاء لأجل التوافق مع الإصدارات القديمة. ولا يمكنك استخدام كليهما في طلب الدالة نفسه. يتم حلّ الوعد بالنوع نفسه الذي يتم تمريره إلى دالة الاستدعاء.
get()
chrome.tabs.get(
tabId: number,
callback?: function,
)
لاسترداد التفاصيل حول علامة التبويب المحددة.
المعلمات
-
tabId
الرقم
-
ردّ الاتصال
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:(tab: Tab) => void
-
tab
-
المرتجعات
-
وعد<مفتاح التبويب>
الإصدار 88 من Chrome أو الإصدارات الأحدثتكون الوعود متاحة في الإصدار Manifest V3 والإصدارات الأحدث، ولكن يتم توفير طلبات الاستدعاء لأجل التوافق مع الإصدارات القديمة. ولا يمكنك استخدام كليهما في طلب الدالة نفسه. يتم حلّ الوعد بالنوع نفسه الذي يتم تمريره إلى دالة الاستدعاء.
getAllInWindow()
chrome.tabs.getAllInWindow(
windowId?: number,
callback?: function,
)
يُرجى استخدام tabs.query
{windowId: windowId}
.
الحصول على تفاصيل عن جميع علامات التبويب في النافذة المحدّدة
المعلمات
-
windowId
الرقم اختياري
الإعداد التلقائي هو النافذة الحالية.
-
ردّ الاتصال
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:(tabs: Tab[]) => void
-
علامات التبويب
-
المرتجعات
-
وعود<Tab[]>
الإصدار 88 من Chrome والإصدارات الأحدثتكون الوعود متاحة في الإصدار Manifest V3 والإصدارات الأحدث، ولكن يتم توفير طلبات الاستدعاء لأجل التوافق مع الإصدارات القديمة. ولا يمكنك استخدام كليهما في طلب الدالة نفسه. يتم حلّ الوعد بالنوع نفسه الذي يتم تمريره إلى دالة الاستدعاء.
getCurrent()
chrome.tabs.getCurrent(
callback?: function,
)
تحصل على علامة التبويب التي يتم إجراء طلب النص البرمجي هذا منها. يعرض القيمة undefined
إذا تمّ استدعاؤه من سياق غير علامة تبويب (على سبيل المثال، صفحة في الخلفية أو عرض نافذة منبثقة).
المعلمات
-
ردّ الاتصال
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:(tab?: Tab) => void
-
tab
علامة تبويب اختيارية
-
المرتجعات
-
Promise<Tab | undefined>
الإصدار 88 من Chrome والإصدارات الأحدثتكون الوعود متاحة في الإصدار Manifest V3 والإصدارات الأحدث، ولكن يتم توفير طلبات الاستدعاء لأجل التوافق مع الإصدارات القديمة. ولا يمكنك استخدام كليهما في طلب الدالة نفسه. يتم حلّ الوعد بالنوع نفسه الذي يتم تمريره إلى دالة الاستدعاء.
getSelected()
chrome.tabs.getSelected(
windowId?: number,
callback?: function,
)
يُرجى استخدام tabs.query
{active: true}
.
تحصل على علامة التبويب المحدّدة في النافذة المحدّدة.
المعلمات
-
windowId
رقم اختياري
يتم استخدام القيمة التلقائية على النافذة الحالية.
-
رد الاتصال
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:(tab: Tab) => void
-
tab
-
المرتجعات
-
وعد<مفتاح التبويب>
الإصدار 88 من Chrome والإصدارات الأحدثتكون الوعود متاحة في الإصدار Manifest V3 والإصدارات الأحدث، ولكن يتم توفير طلبات الاستدعاء لأجل التوافق مع الإصدارات القديمة. ولا يمكنك استخدام كليهما في طلب الدالة نفسه. يتم حلّ الوعد بالنوع نفسه الذي يتم تمريره إلى دالة الاستدعاء.
getZoom()
chrome.tabs.getZoom(
tabId?: number,
callback?: function,
)
تحصل على عامل التكبير الحالي لعلامة تبويب محدّدة.
المعلمات
-
tabId
رقم اختياري
رقم تعريف علامة التبويب التي يتم الحصول على عامل التكبير الحالي منها، ويتم ضبطه تلقائيًا على علامة التبويب النشطة في النافذة الحالية.
-
رد الاتصال
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:(zoomFactor: number) => void
-
zoomFactor
الرقم
عامل التكبير أو التصغير الحالي لعلامة التبويب
-
المرتجعات
-
Promise<number>
الإصدار 88 من Chrome والإصدارات الأحدثتكون الوعود متاحة في الإصدار Manifest V3 والإصدارات الأحدث، ولكن يتم توفير طلبات الاستدعاء لأجل التوافق مع الإصدارات القديمة. ولا يمكنك استخدام كليهما في طلب الدالة نفسه. يتم حلّ الوعد بالنوع نفسه الذي يتم تمريره إلى دالة الاستدعاء.
getZoomSettings()
chrome.tabs.getZoomSettings(
tabId?: number,
callback?: function,
)
الحصول على إعدادات التكبير/التصغير الحالية لعلامة تبويب محدّدة
المعلمات
-
tabId
الرقم اختياري
رقم تعريف علامة التبويب التي يتم الحصول على إعدادات التصغير/التكبير الحالية منها، ويتم ضبطه تلقائيًا على علامة التبويب النشطة في النافذة الحالية.
-
ردّ الاتصال
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:(zoomSettings: ZoomSettings) => void
-
zoomSettings
إعدادات التكبير/التصغير الحالية لعلامة التبويب
-
المرتجعات
-
التعهد بتقديم <ZoomSettings>
الإصدار 88 من Chrome أو الإصدارات الأحدثتكون الوعود متاحة في الإصدار Manifest V3 والإصدارات الأحدث، ولكن يتم توفير طلبات الاستدعاء لأجل التوافق مع الإصدارات القديمة. ولا يمكنك استخدام كليهما في طلب الدالة نفسه. يتم حلّ الوعد بالنوع نفسه الذي يتم تمريره إلى دالة الاستدعاء.
goBack()
chrome.tabs.goBack(
tabId?: number,
callback?: function,
)
الرجوع إلى الصفحة السابقة في حال توفّرها
المعلمات
-
tabId
رقم اختياري
معرّف علامة التبويب التي تريد الرجوع إليها، ويتم ضبطه تلقائيًا على علامة التبويب المحدّدة في النافذة الحالية.
-
رد الاتصال
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:() => void
المرتجعات
-
Promise<void>
الإصدار 88 من Chrome أو الإصدارات الأحدثتكون الوعود متاحة في الإصدار Manifest V3 والإصدارات الأحدث، ولكن يتم توفير طلبات الاستدعاء لأجل التوافق مع الإصدارات القديمة. ولا يمكنك استخدام كليهما في طلب الدالة نفسه. يتم حلّ الوعد بالنوع نفسه الذي يتم تمريره إلى دالة الاستدعاء.
goForward()
chrome.tabs.goForward(
tabId?: number,
callback?: function,
)
انتقِل إلى الصفحة التالية، إذا كانت متاحة.
المعلمات
-
tabId
رقم اختياري
رقم تعريف علامة التبويب للانتقال إلى الأمام، ويتم ضبطه تلقائيًا على علامة التبويب المحددة في النافذة الحالية.
-
رد الاتصال
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:() => void
المرتجعات
-
Promise<void>
الإصدار 88 من Chrome والإصدارات الأحدثتكون الوعود متاحة في الإصدار Manifest V3 والإصدارات الأحدث، ولكن يتم توفير طلبات الاستدعاء لأجل التوافق مع الإصدارات القديمة. ولا يمكنك استخدام كليهما في طلب الدالة نفسه. يتم حلّ الوعد بالنوع نفسه الذي يتم تمريره إلى دالة الاستدعاء.
group()
chrome.tabs.group(
options: object,
callback?: function,
)
تُضيف علامة تبويب واحدة أو أكثر إلى مجموعة محدّدة، أو في حال عدم تحديد مجموعة، تُضيف علامات التبويب المحدّدة إلى مجموعة تم إنشاؤها حديثًا.
المعلمات
-
الخيارات
عنصر
-
createProperties
العنصر اختياري
الإعدادات لإنشاء مجموعة لا يمكن استخدامه إذا سبق تحديد groupId.
-
windowId
رقم اختياري
نافذة المجموعة الجديدة يتم ضبطها تلقائيًا على النافذة الحالية.
-
-
groupId
رقم اختياري
رقم تعريف المجموعة المطلوب إضافة علامات التبويب إليها في حال عدم تحديد مجموعة، سيتم إنشاء مجموعة جديدة.
-
tabIds
عدد | [عدد, ...عدد[]]
رقم تعريف علامة التبويب أو قائمة بأرقام تعريف علامات التبويب المطلوب إضافتها إلى المجموعة المحدّدة
-
-
رد الاتصال
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:(groupId: number) => void
-
groupId
الرقم
رقم تعريف المجموعة التي تمت إضافة علامات التبويب إليها.
-
المرتجعات
-
وعد <number>
تكون الوعود متاحة في الإصدار Manifest V3 والإصدارات الأحدث، ولكن يتم توفير طلبات الاستدعاء لأجل التوافق مع الإصدارات القديمة. ولا يمكنك استخدام كليهما في طلب الدالة نفسه. يتم حلّ الوعد بالنوع نفسه الذي يتم تمريره إلى دالة الاستدعاء.
highlight()
chrome.tabs.highlight(
highlightInfo: object,
callback?: function,
)
يُبرز علامات التبويب المحدّدة ويركز على علامة التبويب الأولى في المجموعة. لن يتخذ أي إجراء إذا كانت علامة التبويب المحدّدة نشطة حاليًا.
المعلمات
-
highlightInfo
عنصر
-
علامات التبويب
رقم | رقم[]
فهرس علامة تبويب واحد أو أكثر لتمييزه
-
windowId
رقم اختياري
النافذة التي تحتوي على علامات التبويب
-
-
ردّ الاتصال
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:(window: Window) => void
-
نافذة
يحتوي على تفاصيل حول النافذة التي تم تمييز علامات التبويب فيها.
-
المرتجعات
-
Promise<windows.Window>
الإصدار 88 من Chrome والإصدارات الأحدثتكون الوعود متاحة في الإصدار Manifest V3 والإصدارات الأحدث، ولكن يتم توفير طلبات الاستدعاء لأجل التوافق مع الإصدارات القديمة. ولا يمكنك استخدام كليهما في طلب الدالة نفسه. يتم حلّ الوعد بالنوع نفسه الذي يتم تمريره إلى دالة الاستدعاء.
insertCSS()
chrome.tabs.insertCSS(
tabId?: number,
details: InjectDetails,
callback?: function,
)
تم استبداله بـ scripting.insertCSS
في الإصدار 3 من ملف البيان.
يتم إدخال صفحات CSS في صفحة. يمكن إزالة الأنماط المُدرجة بهذه الطريقة باستخدام scripting.removeCSS
. لمعرفة التفاصيل، يُرجى الاطّلاع على قسم الاستيراد الآلي في مستند نصوص المحتوى.
المعلمات
-
tabId
الرقم اختياري
رقم تعريف علامة التبويب التي سيتم إدراج ملف CSS فيها، ويتم ضبطه تلقائيًا على علامة التبويب النشطة في النافذة الحالية.
-
التفاصيل
تفاصيل نص CSS المطلوب إدراجه يجب ضبط رمز الملف أو خاصيته، ولكن لا يمكن ضبط كليهما في الوقت نفسه.
-
ردّ الاتصال
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:() => void
المرتجعات
-
Promise<void>
الإصدار 88 من Chrome والإصدارات الأحدثتكون الوعود متاحة في الإصدار Manifest V3 والإصدارات الأحدث، ولكن يتم توفير طلبات الاستدعاء لأجل التوافق مع الإصدارات القديمة. ولا يمكنك استخدام كليهما في طلب الدالة نفسه. يتم حلّ الوعد بالنوع نفسه الذي يتم تمريره إلى دالة الاستدعاء.
move()
chrome.tabs.move(
tabIds: number | number[],
moveProperties: object,
callback?: function,
)
نقل علامة تبويب واحدة أو أكثر إلى موضع جديد في نافذتها أو إلى نافذة جديدة لاحظ أنه لا يمكن نقل علامات التبويب إلا من النوافذ العادية (window.type === "normal") وإليها.
المعلمات
-
tabIds
عدد | عدد[]
رقم تعريف علامة التبويب أو قائمة أرقام تعريف علامات التبويب المطلوب نقلها
-
moveProperties
عنصر
-
المؤشر
الرقم
الموضع الذي تريد نقل النافذة إليه. استخدِم
-1
لوضع علامة التبويب في نهاية النافذة. -
windowId
رقم اختياري
يتم ضبطها تلقائيًا على النافذة التي تظهر فيها علامة التبويب حاليًا.
-
-
ردّ الاتصال
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:(tabs: Tab | Tab[]) => void
-
علامات التبويب
تفاصيل حول علامات التبويب التي تم نقلها
-
المرتجعات
-
الإصدار 88 من Chrome والإصدارات الأحدث
تكون الوعود متاحة في الإصدار Manifest V3 والإصدارات الأحدث، ولكن يتم توفير طلبات الاستدعاء لأجل التوافق مع الإصدارات القديمة. ولا يمكنك استخدام كليهما في طلب الدالة نفسه. يتم حلّ الوعد بالنوع نفسه الذي يتم تمريره إلى دالة الاستدعاء.
query()
chrome.tabs.query(
queryInfo: object,
callback?: function,
)
تحصل على جميع علامات التبويب التي تحتوي على السمات المحدّدة، أو جميع علامات التبويب في حال عدم تحديد أي سمات.
المعلمات
-
queryInfo
عنصر
-
نشطة
منطقي اختياري
ما إذا كانت علامات التبويب نشطة في النوافذ
-
تطبيق audible
قيمة منطقية اختيارية
الإصدار 45 من Chrome والإصدارات الأحدثما إذا كانت علامات التبويب مسموعة
-
autoDiscardable
منطقي اختياري
Chrome 54 والإصدارات الأحدثيمكنك اختيار ما إذا كان يمكن للمتصفّح تجاهل علامات التبويب تلقائيًا عند انخفاض الموارد.
-
currentWindow
منطقي اختياري
ما إذا كانت علامات التبويب في النافذة الحالية
-
تم التجاهل
منطقي اختياري
Chrome 54 والإصدارات الأحدثما إذا كان سيتم تجاهل علامات التبويب علامة التبويب التي تم تجاهلها هي علامة تم تفريغ محتواها من الذاكرة، ولكنها لا تزال مرئية في شريط علامات التبويب. وتتم إعادة تحميل محتواها عند تفعيله في المرة التالية.
-
مجمّد
منطقي اختياري
في انتظار المراجعةما إذا تم تجميد علامات التبويب أم لا. لا يمكن لعلامة التبويب المجمّدة تنفيذ المهام، بما في ذلك معالجات الأحداث أو الموقّتات. تظهر الصورة في شريط علامات التبويب ويتم تحميل محتواها في الذاكرة. ويتم إلغاء تجميدها عند التفعيل.
-
groupId
رقم اختياري
الإصدار 88 من Chrome والإصدارات الأحدثرقم تعريف المجموعة التي تندرج ضمنها علامات التبويب، أو
tabGroups.TAB_GROUP_ID_NONE
لعلامات التبويب غير المجمّعة -
بارزة
منطقي اختياري
ما إذا كانت علامات التبويب مميّزة
-
المؤشر
رقم اختياري
موضع علامات التبويب داخل نوافذها.
-
lastFocusedWindow
قيمة منطقية اختيارية
ما إذا كانت علامات التبويب في النافذة التي تم التركيز عليها مؤخرًا
-
تم كتم الصوت
منطقي اختياري
Chrome 45 والإصدارات الأحدثما إذا كانت علامات التبويب مكتومة الصوت
-
تم تثبيته
منطقي اختياري
ما إذا كانت علامات التبويب قد تم تثبيتها
-
status
TabStatus اختيارية
حالة تحميل علامة التبويب
-
title
سلسلة اختيارية
مطابقة عناوين الصفحات مع نمط يتم تجاهل هذه السمة إذا لم تكن الإضافية تملك الإذن
"tabs"
. -
url
سلسلة | سلسلة[] اختيارية
مطابقة علامات التبويب مع نمط عنوان URL واحد أو أكثر معرّفات الأجزاء غير متطابقة. يتم تجاهل هذه السمة إذا لم يكن للإضافة إذن
"tabs"
. -
windowId
رقم اختياري
رقم تعريف النافذة الرئيسية، أو
windows.WINDOW_ID_CURRENT
للإشارة إلى النافذة الحالية. -
windowType
WindowType اختياري
نوع النافذة التي توجد بها علامات التبويب.
-
-
ردّ الاتصال
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:(result: Tab[]) => void
-
نتيجة
-
المرتجعات
-
Promise<Tab[]>
الإصدار 88 من Chrome والإصدارات الأحدثتكون الوعود متاحة في الإصدار Manifest V3 والإصدارات الأحدث، ولكن يتم توفير طلبات الاستدعاء لأجل التوافق مع الإصدارات القديمة. ولا يمكنك استخدام كليهما في طلب الدالة نفسه. يتم حلّ الوعد بالنوع نفسه الذي يتم تمريره إلى دالة الاستدعاء.
reload()
chrome.tabs.reload(
tabId?: number,
reloadProperties?: object,
callback?: function,
)
أعِد تحميل علامة تبويب.
المعلمات
-
tabId
رقم اختياري
رقم تعريف علامة التبويب المطلوب إعادة تحميلها، وهو الإعداد التلقائي على علامة التبويب المحدَّدة في النافذة الحالية.
-
reloadProperties
العنصر اختياري
-
bypassCache
منطقي اختياري
تحديد ما إذا كان سيتم تجاوز التخزين المؤقت المحلي أم لا. وتكون القيمة التلقائية هي
false
.
-
-
ردّ الاتصال
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:() => void
المرتجعات
-
Promise<void>
الإصدار 88 من Chrome والإصدارات الأحدثتكون الوعود متاحة في الإصدار Manifest V3 والإصدارات الأحدث، ولكن يتم توفير طلبات الاستدعاء لأجل التوافق مع الإصدارات القديمة. ولا يمكنك استخدام كليهما في طلب الدالة نفسه. يتم حلّ الوعد بالنوع نفسه الذي يتم تمريره إلى دالة الاستدعاء.
remove()
chrome.tabs.remove(
tabIds: number | number[],
callback?: function,
)
يغلق هذا الزر علامة تبويب واحدة أو أكثر.
المعلمات
-
tabIds
عدد | عدد[]
رقم تعريف علامة التبويب أو قائمة أرقام تعريف علامات التبويب المطلوب إغلاقها
-
ردّ الاتصال
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:() => void
المرتجعات
-
Promise<void>
الإصدار 88 من Chrome والإصدارات الأحدثتكون الوعود متاحة في الإصدار Manifest V3 والإصدارات الأحدث، ولكن يتم توفير طلبات الاستدعاء لأجل التوافق مع الإصدارات القديمة. ولا يمكنك استخدام كليهما في طلب الدالة نفسه. يتم حلّ الوعد بالنوع نفسه الذي يتم تمريره إلى دالة الاستدعاء.
removeCSS()
chrome.tabs.removeCSS(
tabId?: number,
details: DeleteInjectionDetails,
callback?: function,
)
تم استبداله بـ scripting.removeCSS
في الإصدار 3 من ملف البيان.
تزيل هذه الوظيفة من الصفحة ملف CSS الذي تم إدخاله سابقًا من خلال طلب إلى scripting.insertCSS
.
المعلمات
-
tabId
رقم اختياري
رقم تعريف علامة التبويب التي تريد إزالة CSS منها، ويتم ضبطه تلقائيًا على علامة التبويب النشطة في النافذة الحالية.
-
التفاصيل
تفاصيل نص CSS المطلوب إزالته يجب ضبط رمز الملف أو خاصيته، ولكن لا يمكن ضبط كليهما في الوقت نفسه.
-
ردّ الاتصال
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:() => void
المرتجعات
-
Promise<void>
الإصدار 88 من Chrome والإصدارات الأحدثتكون الوعود متاحة في الإصدار Manifest V3 والإصدارات الأحدث، ولكن يتم توفير طلبات الاستدعاء لأجل التوافق مع الإصدارات القديمة. ولا يمكنك استخدام كليهما في طلب الدالة نفسه. يتم حلّ الوعد بالنوع نفسه الذي يتم تمريره إلى دالة الاستدعاء.
sendMessage()
chrome.tabs.sendMessage(
tabId: number,
message: any,
options?: object,
callback?: function,
)
يرسل رسالة واحدة إلى النصوص البرمجية للمحتوى في علامة التبويب المحدّدة، مع استدعاء اختياري لتشغيله عند إرسال الرد. يتم تشغيل الحدث runtime.onMessage
في كل نص برمجي للمحتوى يتم تشغيله في علامة التبويب المحدّدة للإضافات الحالية.
المعلمات
-
tabId
الرقم
-
رسالة
أي واحد
الرسالة المطلوب إرسالها يجب أن تكون هذه الرسالة عنصرًا قابلاً للتحويل إلى تنسيق JSON.
-
الخيارات
العنصر اختياري
-
رد الاتصال
الدالة اختيارية
Chrome 99 والإصدارات الأحدثتظهر المَعلمة
callback
على النحو التالي:(response: any) => void
-
رد
أي واحد
عنصر استجابة JSON الذي أرسله معالِج الرسالة إذا حدث خطأ أثناء الاتصال بعلامة التبويب المحدّدة، يتم استدعاء هذه الدالة بدون وسيطات، وسيتم ضبط
runtime.lastError
على رسالة الخطأ.
-
المرتجعات
-
Promise<any>
Chrome 99 والإصدارات الأحدثتكون الوعود متاحة في الإصدار Manifest V3 والإصدارات الأحدث، ولكن يتم توفير طلبات الاستدعاء لأجل التوافق مع الإصدارات القديمة. ولا يمكنك استخدام كليهما في طلب الدالة نفسه. يتم حلّ الوعد بالنوع نفسه الذي يتم تمريره إلى دالة الاستدعاء.
sendRequest()
chrome.tabs.sendRequest(
tabId: number,
request: any,
callback?: function,
)
يُرجى استخدام runtime.sendMessage
.
تُرسِل هذه الوظيفة طلبًا واحدًا إلى نصوص المحتوى في علامة التبويب المحدّدة، مع إجراء استدعاء اختياري لتنفيذه عند إرسال ردّ. يتم تشغيل الحدث extension.onRequest
في كل نص برمجي للمحتوى يتم تشغيله في علامة التبويب المحدّدة للإضافات الحالية.
المعلمات
-
tabId
الرقم
-
طلب
أي واحد
-
ردّ الاتصال
الدالة اختيارية
Chrome 99 والإصدارات الأحدثتظهر المَعلمة
callback
على النحو التالي:(response: any) => void
-
رد
أي واحد
كائن استجابة JSON الذي أرسله معالج الطلب. إذا حدث خطأ أثناء الاتصال بعلامة التبويب المحدّدة، يتم استدعاء هذه الدالة بدون وسيطات، وسيتم ضبط
runtime.lastError
على رسالة الخطأ.
-
المرتجعات
-
Promise<any>
الإصدار 99 من Chrome أو الإصدارات الأحدثتكون الوعود متاحة في الإصدار Manifest V3 والإصدارات الأحدث، ولكن يتم توفير طلبات الاستدعاء لأجل التوافق مع الإصدارات القديمة. ولا يمكنك استخدام كليهما في طلب الدالة نفسه. يتم حلّ الوعد بالنوع نفسه الذي يتم تمريره إلى دالة الاستدعاء.
setZoom()
chrome.tabs.setZoom(
tabId?: number,
zoomFactor: number,
callback?: function,
)
تكبير علامة تبويب محدّدة
المعلمات
-
tabId
رقم اختياري
رقم تعريف علامة التبويب المطلوب تكبيرها، ويتم ضبطه تلقائيًا على علامة التبويب النشطة في النافذة الحالية.
-
zoomFactor
الرقم
عامل التكبير أو التصغير الجديد تؤدي القيمة
0
إلى ضبط علامة التبويب على عامل التكبير التلقائي الحالي. تحدّد القيم الأكبر من0
عامل تكبير (قد لا يكون تلقائيًا) للعلامة. -
ردّ الاتصال
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:() => void
المرتجعات
-
Promise<void>
الإصدار 88 من Chrome أو الإصدارات الأحدثتكون الوعود متاحة في الإصدار Manifest V3 والإصدارات الأحدث، ولكن يتم توفير طلبات الاستدعاء لأجل التوافق مع الإصدارات القديمة. ولا يمكنك استخدام كليهما في طلب الدالة نفسه. يتم حلّ الوعد بالنوع نفسه الذي يتم تمريره إلى دالة الاستدعاء.
setZoomSettings()
chrome.tabs.setZoomSettings(
tabId?: number,
zoomSettings: ZoomSettings,
callback?: function,
)
لضبط إعدادات التكبير/التصغير لعلامة تبويب محدّدة، والتي تحدّد كيفية التعامل مع تغييرات التكبير/التصغير وتتم إعادة ضبط هذه الإعدادات على الإعدادات التلقائية عند التنقّل في علامة التبويب.
المعلمات
-
tabId
رقم اختياري
رقم تعريف علامة التبويب التي تريد تغيير إعدادات التكبير/التصغير لها، ويتم ضبطه تلقائيًا على علامة التبويب النشطة في النافذة الحالية.
-
zoomSettings
يحدِّد كيفية التعامل مع تغييرات التكبير/التصغير ونطاقها.
-
رد الاتصال
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:() => void
المرتجعات
-
Promise<void>
الإصدار 88 من Chrome والإصدارات الأحدثتكون الوعود متاحة في الإصدار Manifest V3 والإصدارات الأحدث، ولكن يتم توفير طلبات الاستدعاء لأجل التوافق مع الإصدارات القديمة. ولا يمكنك استخدام كليهما في طلب الدالة نفسه. يتم حلّ الوعد بالنوع نفسه الذي يتم تمريره إلى دالة الاستدعاء.
ungroup()
chrome.tabs.ungroup(
tabIds: number | [number, ...number[]],
callback?: function,
)
تزيل علامة تبويب واحدة أو أكثر من مجموعاتها المعنيّة. إذا أصبحت أي مجموعات فارغة، يتم حذفها.
المعلمات
-
tabIds
عدد | [عدد, ...عدد[]]
رقم تعريف علامة التبويب أو قائمة أرقام تعريف علامات التبويب المطلوب إزالتها من مجموعاتها المعنيّة
-
ردّ الاتصال
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:() => void
المرتجعات
-
وعود <باطلة>
تكون الوعود متاحة في الإصدار Manifest V3 والإصدارات الأحدث، ولكن يتم توفير طلبات الاستدعاء لأجل التوافق مع الإصدارات القديمة. ولا يمكنك استخدام كليهما في طلب الدالة نفسه. يتم حلّ الوعد بالنوع نفسه الذي يتم تمريره إلى دالة الاستدعاء.
update()
chrome.tabs.update(
tabId?: number,
updateProperties: object,
callback?: function,
)
لتعديل خصائص علامة تبويب لا يتم تعديل السمات التي لم يتم تحديدها في updateProperties
.
المعلمات
-
tabId
رقم اختياري
يتم ضبط الإعدادات التلقائية على علامة التبويب المحدّدة في النافذة الحالية.
-
updateProperties
عنصر
-
نشطة
منطقي اختياري
ما إذا كان يجب أن تكون علامة التبويب نشطة لا تؤثّر هذه العلامة في ما إذا كان سيتم التركيز على النافذة (راجِع
windows.update
). -
autoDiscardable
منطقي اختياري
الإصدار 54 من Chrome أو الإصدارات الأحدثما إذا كان المتصفح سيتجاهل علامة التبويب تلقائيًا عند انخفاض الموارد
-
بارزة
منطقي اختياري
تُضيف علامة التبويب أو تُزيلها من التحديد الحالي.
-
تم كتم الصوت
منطقي اختياري
Chrome 45 والإصدارات الأحدثما إذا كان يجب كتم صوت علامة التبويب
-
openerTabId
رقم اختياري
رقم تعريف علامة التبويب التي فتحت علامة التبويب هذه. في حال تحديدها، يجب أن تكون علامة التبويب المفتوحة في النافذة نفسها التي تظهر فيها هذه العلامة.
-
تم تثبيته
منطقي اختياري
ما إذا كان يجب تثبيت علامة التبويب
-
تم تحديد هذا الخيار
منطقي اختياري
متوقّفة نهائيًايُرجى استخدام القيمة المميّزة.
ما إذا كان يجب اختيار علامة التبويب
-
url
سلسلة اختيارية
عنوان URL الذي تريد الانتقال إليه في علامة التبويب لا يمكن استخدام عناوين URL لرمز JavaScript، لذا استخدِم
scripting.executeScript
بدلاً من ذلك.
-
-
ردّ الاتصال
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:(tab?: Tab) => void
-
tab
علامة تبويب اختيارية
تفاصيل حول علامة التبويب المعدّلة لا يحتوي عنصر
tabs.Tab
علىurl
وpendingUrl
وtitle
وfavIconUrl
إذا لم يتم طلب إذن"tabs"
.
-
المرتجعات
-
Promise<Tab | undefined>
الإصدار 88 من Chrome والإصدارات الأحدثتتوفّر الوعود في الإصدار Manifest V3 والإصدارات الأحدث، ولكن يتم توفير عمليات معاودة الاتصال للتوافق مع الأنظمة القديمة. ولا يمكنك استخدام كليهما في طلب الدالة نفسه. يتم حلّ الوعد بالنوع نفسه الذي يتم تمريره إلى دالة الاستدعاء.
الفعاليات
onActivated
chrome.tabs.onActivated.addListener(
callback: function,
)
يتم تشغيله عند تغيير علامة التبويب النشطة في نافذة. يُرجى العِلم أنّه قد لا يتم ضبط عنوان URL للعلامة تبويب في وقت بدء هذا الحدث، ولكن يمكنك الاستماع إلى أحداث onUpdated للحصول على إشعار عند ضبط عنوان URL.
المعلمات
-
ردّ الاتصال
دالة
تظهر المَعلمة
callback
على النحو التالي:(activeInfo: object) => void
-
activeInfo
عنصر
-
tabId
الرقم
رقم تعريف علامة التبويب التي أصبحت نشطة.
-
windowId
الرقم
رقم تعريف النافذة التي غيّرت علامة التبويب النشطة داخلها
-
-
onActiveChanged
chrome.tabs.onActiveChanged.addListener(
callback: function,
)
يُرجى استخدام tabs.onActivated
.
يتم تشغيله عند تغيير علامة التبويب المحدّدة في نافذة. يُرجى العِلم أنّه قد لا يتم ضبط عنوان URL للعلامة تبويب في وقت بدء هذا الحدث، ولكن يمكنك الاستماع إلى أحداث tabs.onUpdated
لتلقّي إشعار عند ضبط عنوان URL.
المعلمات
-
ردّ الاتصال
دالة
تظهر المَعلمة
callback
على النحو التالي:(tabId: number, selectInfo: object) => void
-
tabId
الرقم
-
selectInfo
عنصر
-
windowId
الرقم
معرّف النافذة التي تم تغيير علامة التبويب المحدّدة فيها.
-
-
onAttached
chrome.tabs.onAttached.addListener(
callback: function,
)
يتم تشغيله عند إرفاق علامة تبويب بنافذة، على سبيل المثال، بسبب نقلها بين النوافذ.
المعلمات
-
ردّ الاتصال
دالة
تظهر المَعلمة
callback
على النحو التالي:(tabId: number, attachInfo: object) => void
-
tabId
الرقم
-
attachInfo
عنصر
-
newPosition
الرقم
-
newWindowId
الرقم
-
-
onCreated
chrome.tabs.onCreated.addListener(
callback: function,
)
يتم تنشيطها عند إنشاء علامة تبويب. يُرجى العِلم أنّه قد لا يتم ضبط عنوان URL لعلامة التبويب وعضويتها في مجموعة علامات التبويب في وقت بدء هذا الحدث، ولكن يمكنك الاستماع إلى أحداث onUpdated للحصول على إشعار عند ضبط عنوان URL أو إضافة علامة التبويب إلى مجموعة علامات تبويب.
المعلمات
-
ردّ الاتصال
دالة
تظهر المَعلمة
callback
على النحو التالي:(tab: Tab) => void
-
tab
-
onDetached
chrome.tabs.onDetached.addListener(
callback: function,
)
يتم تشغيله عند فصل علامة تبويب عن نافذة، على سبيل المثال، بسبب نقلها بين النوافذ.
المعلمات
-
ردّ الاتصال
دالة
تظهر المَعلمة
callback
على النحو التالي:(tabId: number, detachInfo: object) => void
-
tabId
الرقم
-
detachInfo
عنصر
-
oldPosition
الرقم
-
oldWindowId
الرقم
-
-
onHighlightChanged
chrome.tabs.onHighlightChanged.addListener(
callback: function,
)
يُرجى استخدام tabs.onHighlighted
.
يتم تشغيله عند تغيُّر علامات التبويب المميّزة أو المحدّدة في إحدى النوافذ.
المعلمات
-
ردّ الاتصال
دالة
تظهر المَعلمة
callback
على النحو التالي:(selectInfo: object) => void
-
selectInfo
عنصر
-
tabIds
number[]
جميع علامات التبويب المميّزة في النافذة
-
windowId
الرقم
النافذة التي تم تغيير علامات التبويب الخاصة بها
-
-
onHighlighted
chrome.tabs.onHighlighted.addListener(
callback: function,
)
يتم تشغيله عند تغيير علامات التبويب المميّزة أو المحدّدة في نافذة.
المعلمات
-
ردّ الاتصال
دالة
تظهر المَعلمة
callback
على النحو التالي:(highlightInfo: object) => void
-
highlightInfo
عنصر
-
tabIds
number[]
جميع علامات التبويب المميّزة في النافذة
-
windowId
الرقم
النافذة التي تم تغيير علامات التبويب الخاصة بها
-
-
onMoved
chrome.tabs.onMoved.addListener(
callback: function,
)
يتم تفعيله عند نقل علامة تبويب داخل نافذة. يتم بدء حدث نقل واحد فقط يمثّل علامة التبويب التي نقلها المستخدم مباشرةً. لا يتم تشغيل أحداث النقل لعلامات التبويب الأخرى التي يجب نقلها استجابةً لعلامة التبويب التي تم نقلها يدويًا. لا يتم تنشيط هذا الحدث عند نقل علامة تبويب بين النوافذ. لمعرفة التفاصيل، يُرجى الاطّلاع على tabs.onDetached
.
المعلمات
-
ردّ الاتصال
دالة
تظهر المَعلمة
callback
على النحو التالي:(tabId: number, moveInfo: object) => void
-
tabId
الرقم
-
moveInfo
عنصر
-
fromIndex
الرقم
-
toIndex
الرقم
-
windowId
الرقم
-
-
onRemoved
chrome.tabs.onRemoved.addListener(
callback: function,
)
يتم إطلاقه عند إغلاق علامة تبويب.
المعلمات
-
ردّ الاتصال
دالة
تظهر المَعلمة
callback
على النحو التالي:(tabId: number, removeInfo: object) => void
-
tabId
الرقم
-
removeInfo
عنصر
-
isWindowClosing
قيمة منطقية
صحيح عندما تم إغلاق علامة التبويب لأنّ النافذة الرئيسية تم إغلاقها.
-
windowId
الرقم
النافذة التي تم إغلاق علامة التبويب الخاصة بها
-
-
onReplaced
chrome.tabs.onReplaced.addListener(
callback: function,
)
يتم تشغيله عند استبدال علامة تبويب بعلامة تبويب أخرى بسبب العرض المُسبَق أو العرض الفوري.
المعلمات
-
ردّ الاتصال
دالة
تظهر المَعلمة
callback
على النحو التالي:(addedTabId: number, removedTabId: number) => void
-
addedTabId
الرقم
-
removedTabId
الرقم
-
onSelectionChanged
chrome.tabs.onSelectionChanged.addListener(
callback: function,
)
يُرجى استخدام tabs.onActivated
.
يتم تشغيله عند تغيير علامة التبويب المحدّدة في نافذة.
المعلمات
-
ردّ الاتصال
دالة
تظهر المَعلمة
callback
على النحو التالي:(tabId: number, selectInfo: object) => void
-
tabId
الرقم
-
selectInfo
عنصر
-
windowId
الرقم
معرّف النافذة التي تم تغيير علامة التبويب المحدّدة فيها.
-
-
onUpdated
chrome.tabs.onUpdated.addListener(
callback: function,
)
يتم تشغيله عند تعديل علامة تبويب.
المعلمات
-
ردّ الاتصال
دالة
تظهر المَعلمة
callback
على النحو التالي:(tabId: number, changeInfo: object, tab: Tab) => void
-
tabId
الرقم
-
changeInfo
عنصر
-
تطبيق audible
قيمة منطقية اختيارية
Chrome 45 والإصدارات الأحدثالحالة الصوتية الجديدة لعلامة التبويب
-
autoDiscardable
منطقي اختياري
Chrome 54 والإصدارات الأحدثالحالة الجديدة لميزة "التخلص التلقائي" لعلامة التبويب
-
تم التجاهل
منطقي اختياري
Chrome 54 والإصدارات الأحدثحالة تجاهل علامة التبويب الجديدة
-
favIconUrl
سلسلة اختيارية
عنوان URL الجديد للرمز المفضّل لعلامة التبويب
-
معلّقة
منطقي اختياري
في انتظار المراجعةالحالة الثابتة الجديدة لعلامة التبويب
-
groupId
رقم اختياري
الإصدار 88 من Chrome والإصدارات الأحدثمجموعة علامات التبويب الجديدة.
-
mutedInfo
MutedInfo اختياري
الإصدار 46 من Chrome والإصدارات الأحدثحالة كتم الصوت الجديدة لعلامة التبويب وسبب التغيير.
-
تم تثبيته
قيمة منطقية اختيارية
الحالة الجديدة لعلامة التبويب المثبَّتة
-
status
TabStatus اختياري
حالة تحميل علامة التبويب
-
title
سلسلة اختيارية
Chrome 48 والإصدارات الأحدثعنوان علامة التبويب الجديد.
-
url
سلسلة اختيارية
عنوان URL للعلامة تبويب إذا تغيّر
-
-
tab
-
onZoomChange
chrome.tabs.onZoomChange.addListener(
callback: function,
)
يتم تشغيله عند تكبير علامة تبويب.
المعلمات
-
ردّ الاتصال
دالة
تظهر المَعلمة
callback
على النحو التالي:(ZoomChangeInfo: object) => void
-
ZoomChangeInfo
عنصر
-
newZoomFactor
الرقم
-
oldZoomFactor
الرقم
-
tabId
الرقم
-
zoomSettings
-
-