कंपनी का ब्यौरा
ब्राउज़र के टैब सिस्टम से इंटरैक्ट करने के लिए, chrome.tabs
API का इस्तेमाल करें. इस एपीआई का इस्तेमाल, ब्राउज़र में टैब बनाने, उनमें बदलाव करने, और उन्हें फिर से व्यवस्थित करने के लिए किया जा सकता है.
खास जानकारी
Tabs API से न सिर्फ़ टैब में बदलाव करने और उन्हें मैनेज करने की सुविधाएं मिलती हैं, बल्कि वह टैब की भाषा का पता लगा सकता है और उसका स्क्रीनशॉट ले सकता है. साथ ही, टैब की कॉन्टेंट स्क्रिप्ट की मदद से कम्यूनिकेट कर सकता है.
अनुमतियां
ज़्यादातर सुविधाओं को इस्तेमाल करने के लिए, किसी अनुमति की ज़रूरत नहीं होती. उदाहरण के लिए: नया टैब बनाना, टैब को फिर से लोड करना, किसी दूसरे यूआरएल पर नेविगेट करना वगैरह.
Tabs API का इस्तेमाल करते समय, डेवलपर को तीन अनुमतियों के बारे में पता होना चाहिए.
- "टैब" की अनुमति
- यह अनुमति
chrome.tabs
नेमस्पेस का ऐक्सेस नहीं देती. इसके बजाय, यह एक एक्सटेंशन को चार संवेदनशील प्रॉपर्टी के लिएtabs.query()
को कॉल करने की सुविधा देता है:tabs.Tab
इन इंस्टेंस पर:url
,pendingUrl
,title
, औरfavIconUrl
. - होस्ट की अनुमतियां
- होस्ट करने की अनुमतियां, एक्सटेंशन को मिलते-जुलते टैब की चार संवेदनशील
tabs.Tab
प्रॉपर्टी को पढ़ने और क्वेरी करने की अनुमति देती हैं. वेtabs.captureVisibleTab()
,tabs.executeScript()
,tabs.insertCSS()
, औरtabs.removeCSS()
जैसे तरीकों का इस्तेमाल करके, मिलते-जुलते टैब के साथ सीधे इंटरैक्ट भी कर सकते हैं. - "activeTab" अनुमति
activeTab
किसी उपयोगकर्ता के शुरू करने के जवाब में, मौजूदा टैब के लिए अस्थायी होस्ट की अनुमति देता है. होस्ट की अनुमतियों के उलट,activeTab
कोई चेतावनी ट्रिगर नहीं करता.
मेनिफ़ेस्ट
मेनिफ़ेस्ट में हर अनुमति का एलान करने के तरीके के उदाहरण यहां दिए गए हैं:
{
"name": "My extension",
...
"permissions": [
"tabs"
],
...
}
{
"name": "My extension",
...
"host_permissions": [
"http://*/*",
"https://*/*"
],
...
}
{
"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
स्ट्रिंग ज़रूरी नहीं
उस एक्सटेंशन का आईडी जिसने म्यूट की गई स्थिति को बदला है. अगर म्यूट की स्थिति में पिछली बार बदलाव किए जाने की वजह एक्सटेंशन नहीं था, तो सेट नहीं है.
-
म्यूट किया गया
boolean
टैब म्यूट है या नहीं (आवाज़ होने से रोका गया). टैब को म्यूट किया जा सकता है, भले ही उसे चलाया न गया हो या अभी आवाज़ न चल रही हो. इसका मतलब है कि 'म्यूट किया गया' ऑडियो इंडिकेटर दिख रहा है या नहीं.
-
वजह
MutedInfoReason ज़रूरी नहीं
टैब के म्यूट या अनम्यूट किए जाने की वजह. अगर टैब की म्यूट स्थिति कभी नहीं बदली गई है, तो यह सेट नहीं होती है.
MutedInfoReason
वह इवेंट जिसकी वजह से म्यूट की स्थिति में बदलाव हुआ.
Enum
"user"
उपयोगकर्ता की इनपुट कार्रवाई ने म्यूट की स्थिति को सेट किया है.
"कैप्चर"
टैब कैप्चर करने की प्रोसेस शुरू की गई, जिसकी वजह से म्यूट की स्थिति बदली गई.
"extension"
एक्सटेंशनId फ़ील्ड से पहचाने गए एक्सटेंशन, म्यूट किया गया स्टेटस सेट करता है.
Tab
प्रॉपर्टी
-
इस्तेमाल में है
boolean
विंडो अपनी विंडो में चालू है या नहीं. इसका यह मतलब नहीं है कि विंडो फ़ोकस है.
-
Audible
बूलियन ज़रूरी नहीं
Chrome 45+क्या टैब ने पिछले कुछ सेकंड से आवाज़ जनरेट की है (हालांकि, अगर टैब म्यूट भी हो, तो हो सकता है कि उसकी आवाज़ न सुनाई दे). इसके बराबर कि 'स्पीकर ऑडियो' इंडिकेटर दिख रहा है या नहीं.
-
autoDiscardable
boolean
Chrome 54 और इसके बाद के वर्शनसंसाधन कम होने पर ब्राउज़र, टैब को अपने-आप खारिज कर सकता है या नहीं.
-
खारिज किया गया
boolean
Chrome 54 और इसके बाद के वर्शनटैब को खारिज किया गया है या नहीं. खारिज किया गया टैब वह टैब होता है जिसका कॉन्टेंट मेमोरी से अनलोड कर दिया गया है, लेकिन वह टैब बार में अब भी दिख रहा है. अगली बार चालू होने पर, इसका कॉन्टेंट फिर से लोड हो जाता है.
-
favIconUrl
स्ट्रिंग ज़रूरी नहीं
टैब के फ़ेविकॉन का यूआरएल. यह प्रॉपर्टी सिर्फ़ तब दिखती है, जब एक्सटेंशन के मेनिफ़ेस्ट में
"tabs"
की अनुमति शामिल हो. अगर टैब लोड हो रहा है, तो यह एक खाली स्ट्रिंग भी हो सकती है. -
groupId
नंबर
Chrome 88+उस ग्रुप का आईडी जिससे टैब जुड़ा है.
-
ऊंचाई
नंबर ज़रूरी नहीं
पिक्सल में टैब की ऊंचाई.
-
हाइलाइट की गई
boolean
टैब हाइलाइट किया गया है या नहीं.
-
आईडी
नंबर ज़रूरी नहीं
टैब का आईडी. ब्राउज़र सेशन में, टैब आईडी यूनीक होते हैं. कुछ मामलों में, ऐसा हो सकता है कि किसी टैब को आईडी असाइन न किया गया हो. उदाहरण के लिए,
sessions
एपीआई का इस्तेमाल करके, विदेशी टैब के बारे में क्वेरी करते समय, एक सेशन आईडी मौजूद हो सकता है. ऐप्लिकेशन और DevTools विंडो के लिए, Tab आईडी कोchrome.tabs.TAB_ID_NONE
पर भी सेट किया जा सकता है. -
गुप्त मोड
boolean
टैब गुप्त विंडो में है या नहीं.
-
इंडेक्स
नंबर
टैब की विंडो में शून्य-आधारित इंडेक्स.
-
lastAccessed
नंबर ज़रूरी नहीं
Chrome 121 और इसके बाद के वर्शनवह समय जब पिछली बार टैब को epoch के बाद के मिलीसेकंड के तौर पर ऐक्सेस किया गया था.
-
mutedInfo
MutedInfo ज़रूरी नहीं है
Chrome 46 और इसके बाद के वर्शनटैब की म्यूट की स्थिति और आखिरी बार स्थिति बदलने की वजह.
-
openerTabId
नंबर ज़रूरी नहीं
अगर इस टैब को खोला गया है, तो उसका आईडी. यह प्रॉपर्टी सिर्फ़ तब दिखती है, जब ओपनर टैब अब भी मौजूद हो.
-
pendingUrl
स्ट्रिंग ज़रूरी नहीं
Chrome 79 और इसके बाद के वर्शनवह यूआरएल जिस पर टैब नेविगेट किया जा रहा है. यह प्रॉपर्टी सिर्फ़ तब दिखती है, जब एक्सटेंशन के मेनिफ़ेस्ट में
"tabs"
की अनुमति शामिल हो और नेविगेशन की मंज़ूरी बाकी हो. -
पिन किया गया
boolean
टैब पिन किया गया है या नहीं.
-
चुना गया
boolean
अब सेवा में नहीं हैकृपया
tabs.Tab.highlighted
का इस्तेमाल करें.टैब चुना गया है या नहीं.
-
sessionId
स्ट्रिंग ज़रूरी नहीं
sessions
एपीआई से मिले टैब की खास तरह से पहचान करने के लिए, इस्तेमाल किया जाने वाला सेशन आईडी. -
status
TabStatus ज़रूरी नहीं
टैब के लोड होने की स्थिति.
-
title
स्ट्रिंग ज़रूरी नहीं
टैब का टाइटल. यह प्रॉपर्टी सिर्फ़ तब दिखती है, जब एक्सटेंशन के मेनिफ़ेस्ट में
"tabs"
की अनुमति शामिल हो. -
यूआरएल
स्ट्रिंग ज़रूरी नहीं
टैब के मुख्य फ़्रेम का आखिरी यूआरएल. यह प्रॉपर्टी सिर्फ़ तब दिखती है, जब एक्सटेंशन के मेनिफ़ेस्ट में
"tabs"
की अनुमति शामिल हो. साथ ही, अगर टैब अब तक असाइन नहीं किया गया है, तो यह एक खाली स्ट्रिंग भी हो सकती है.Tab.pendingUrl
भी देखें. -
चौड़ाई
नंबर ज़रूरी नहीं
पिक्सल में टैब की चौड़ाई.
-
windowId
नंबर
उस विंडो का आईडी जिसमें टैब है.
TabStatus
टैब के लोड होने की स्थिति.
Enum
WindowType
विंडो किस तरह की है.
Enum
"devtools"
ZoomSettings
इससे पता चलता है कि टैब में ज़ूम के बदलावों को कैसे और किस दायरे में मैनेज किया जाता है.
प्रॉपर्टी
-
defaultZoomFactor
नंबर ज़रूरी नहीं
Chrome 43+इसका इस्तेमाल, Tab.getZoomSettings के कॉल में मौजूदा टैब के लिए डिफ़ॉल्ट ज़ूम लेवल पर वापस जाने के लिए किया जाता है.
-
मोड
ZoomSettingsMode ज़रूरी नहीं है
इससे पता चलता है कि ज़ूम में किए गए बदलावों को कैसे मैनेज किया जाता है.इसका मतलब है कि पेज की असल स्केलिंग के लिए कौनसी इकाई ज़िम्मेदार है. यह डिफ़ॉल्ट रूप से
automatic
पर सेट होती है. -
दायरा
ZoomSettingsScope ज़रूरी नहीं है
इससे यह तय होता है कि ज़ूम किए गए बदलाव, पेज के ऑरिजिन पर लागू होंगे या सिर्फ़ इस टैब पर लागू होंगे. अगर ऐसा नहीं है, तो
automatic
मोड में डिफ़ॉल्ट तौर परper-origin
सेट होता है औरper-tab
नहीं.
ZoomSettingsMode
इससे पता चलता है कि ज़ूम में किए गए बदलावों को कैसे मैनेज किया जाता है.इसका मतलब है कि पेज की असल स्केलिंग के लिए कौनसी इकाई ज़िम्मेदार है. यह डिफ़ॉल्ट रूप से automatic
पर सेट होती है.
Enum
"अपने-आप"
ज़ूम करने से जुड़े बदलाव, ब्राउज़र अपने-आप मैनेज करता है.
"manual"
ज़ूम से जुड़े बदलावों को अपने-आप हैंडल करने की सेटिंग को बदल देता है. onZoomChange
इवेंट अब भी भेजा जाएगा. इस इवेंट को सुनने और पेज को मैन्युअल तरीके से स्केल करने की ज़िम्मेदारी एक्सटेंशन की है. इस मोड में per-origin
को ज़ूम करने की सुविधा काम नहीं करती. इसलिए, यह scope
की ज़ूम सेटिंग को अनदेखा करता है और per-tab
को मानता है.
"अक्षम"
टैब में सभी ज़ूम करना अक्षम करता है. ऐसा करने से टैब, ज़ूम के डिफ़ॉल्ट लेवल पर वापस आ जाता है और ज़ूम करने की कोशिश करने वाले सभी बदलावों को अनदेखा कर दिया जाता है.
ZoomSettingsScope
इससे यह तय होता है कि ज़ूम किए गए बदलाव, पेज के ऑरिजिन पर लागू होंगे या सिर्फ़ इस टैब पर लागू होंगे. अगर ऐसा नहीं है, तो automatic
मोड में डिफ़ॉल्ट तौर पर per-origin
सेट होता है और 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:-स्कीम पेज, अन्य एक्सटेंशन के पेज, और डेटा: यूआरएल शामिल हैं. इन संवेदनशील साइटों को सिर्फ़ ActiveTab की अनुमति के साथ कैप्चर किया जा सकता है. फ़ाइल के यूआरएल सिर्फ़ तब कैप्चर किए जा सकते हैं, जब एक्सटेंशन को फ़ाइल का ऐक्सेस दिया गया हो.
पैरामीटर
-
windowId
नंबर ज़रूरी नहीं
टारगेट विंडो. डिफ़ॉल्ट तौर पर, यह मौजूदा विंडो पर सेट होता है.
-
विकल्प
ImageDetails ज़रूरी नहीं
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:(dataUrl: string) => void
-
dataUrl
स्ट्रिंग
डेटा का यूआरएल, जो कैप्चर किए गए टैब के दिखने वाले हिस्से की इमेज को कोड में बदलता है. इसे दिखाने के लिए, एचटीएमएल
img
एलिमेंट की 'src' प्रॉपर्टी को असाइन किया जा सकता है.
-
लौटाए गए प्रॉडक्ट
-
प्रॉमिस<string>
Chrome 88+प्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.
connect()
chrome.tabs.connect(
tabId: number,
connectInfo?: object,
)
बताए गए टैब में मौजूद कॉन्टेंट स्क्रिप्ट से कनेक्ट करता है. मौजूदा एक्सटेंशन के लिए तय किए गए टैब में चल रही हर कॉन्टेंट स्क्रिप्ट में runtime.onConnect
इवेंट सक्रिय होता है. ज़्यादा जानकारी के लिए, कॉन्टेंट स्क्रिप्ट मैसेज सेवा देखें.
पैरामीटर
-
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
-
यूआरएल
स्ट्रिंग ज़रूरी नहीं
वह यूआरएल जिस पर शुरुआत में टैब को नेविगेट करना है. पूरी तरह क्वालिफ़ाइड यूआरएल में एक स्कीम शामिल होनी चाहिए (जैसे, 'http://www.google.com', न कि 'www.google.com'). मिलते-जुलते यूआरएल, एक्सटेंशन में मौजूद मौजूदा पेज से मिलते-जुलते होते हैं. डिफ़ॉल्ट रूप से, यह 'नया टैब पेज' पर सेट होता है.
-
windowId
नंबर ज़रूरी नहीं
वह विंडो जिसमें नया टैब बनाना है. डिफ़ॉल्ट तौर पर, यह मौजूदा विंडो पर सेट होता है.
-
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:(tab: Tab) => void
-
टैब से
बनाया गया टैब.
-
लौटाए गए प्रॉडक्ट
-
Promise<Tab>
Chrome 88+प्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.
detectLanguage()
chrome.tabs.detectLanguage(
tabId?: number,
callback?: function,
)
यह टैब में मौजूद कॉन्टेंट की मुख्य भाषा का पता लगाता है.
पैरामीटर
-
tabId
नंबर ज़रूरी नहीं
डिफ़ॉल्ट तौर पर, यह मौजूदा विंडो के ऐक्टिव टैब पर सेट होता है.
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:(language: string) => void
-
language
स्ट्रिंग
ISO भाषा कोड, जैसे कि
en
याfr
. इस तरीके में इस्तेमाल की जा सकने वाली भाषाओं की पूरी सूची देखने के लिए, kLanguageInfoTable देखें. दूसरे से चौथे कॉलम पर सही का निशान लगाया जाता है और पहला बिना शून्य वाला वैल्यू दी जाती है. हालांकि, सिंप्लिफ़ाइड चाइनीज़ के लिए ऐसा नहीं होता है, जिसके लिएzh-CN
दिया गया होता है. किसी अज्ञात/अ तय भाषा के लिए,und
दिया जाता है.
-
लौटाए गए प्रॉडक्ट
-
प्रॉमिस<string>
Chrome 88+प्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.
discard()
chrome.tabs.discard(
tabId?: number,
callback?: function,
)
मेमोरी से टैब को खारिज करता है. खारिज किए गए टैब, टैब बार पर अब भी दिखते हैं. इन्हें चालू करने के बाद, इन्हें फिर से लोड किया जाता है.
पैरामीटर
-
tabId
नंबर ज़रूरी नहीं
खारिज किए जाने वाले टैब का आईडी. तय किए जाने पर, टैब को तब तक खारिज कर दिया जाता है, जब तक कि वह चालू न हो या उसे पहले ही खारिज न कर दिया गया हो. अगर इसे हटाया जाता है, तो ब्राउज़र सबसे कम ज़रूरी टैब को खारिज कर देता है. अगर खारिज किया जा सकने वाला कोई टैब मौजूद नहीं है, तो यह प्रोसेस नहीं हो पाएगा.
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:(tab?: Tab) => void
-
टैब से
Tab ज़रूरी नहीं
खारिज किया गया टैब, अगर उसे खारिज कर दिया गया था, लेकिन उसके बारे में जानकारी नहीं है.
-
लौटाए गए प्रॉडक्ट
-
Promise<Tab | undefined>
Chrome 88+प्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.
duplicate()
chrome.tabs.duplicate(
tabId: number,
callback?: function,
)
टैब का डुप्लीकेट बनाता है.
पैरामीटर
-
tabId
नंबर
डुप्लीकेट करने के लिए टैब का आईडी.
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:(tab?: Tab) => void
लौटाए गए प्रॉडक्ट
-
Promise<Tab | undefined>
Chrome 88+प्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.
executeScript()
chrome.tabs.executeScript(
tabId?: number,
details: InjectDetails,
callback?: function,
)
मेनिफ़ेस्ट V3 में scripting.executeScript
से बदला गया.
किसी पेज में JavaScript कोड इंजेक्ट करता है. ज़्यादा जानकारी के लिए, कॉन्टेंट स्क्रिप्ट दस्तावेज़ का प्रोग्रामैटिक इंजेक्शन सेक्शन देखें.
पैरामीटर
-
tabId
नंबर ज़रूरी नहीं
उस टैब का आईडी जिसमें स्क्रिप्ट चलाना है; डिफ़ॉल्ट रूप से, मौजूदा विंडो के ऐक्टिव टैब पर स्विच होता है.
-
जानकारी
चलाई जाने वाली स्क्रिप्ट की जानकारी. कोड या फ़ाइल प्रॉपर्टी को सेट करना ज़रूरी है, लेकिन दोनों एक ही समय पर सेट नहीं किए जा सकते.
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:(result?: any[]) => void
-
नतीजा
कोई भी[] ज़रूरी नहीं
हर इंजेक्ट किए गए फ़्रेम में स्क्रिप्ट का नतीजा.
-
लौटाए गए प्रॉडक्ट
-
वादा<any[] | undefined>
Chrome 88+प्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.
get()
chrome.tabs.get(
tabId: number,
callback?: function,
)
बताए गए टैब के बारे में जानकारी देता है.
पैरामीटर
-
tabId
नंबर
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:(tab: Tab) => void
-
टैब से
-
लौटाए गए प्रॉडक्ट
-
Promise<Tab>
Chrome 88+प्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.
getAllInWindow()
chrome.tabs.getAllInWindow(
windowId?: number,
callback?: function,
)
कृपया tabs.query
{windowId: windowId}
का इस्तेमाल करें.
बताई गई विंडो में सभी टैब के बारे में जानकारी देता है.
पैरामीटर
-
windowId
नंबर ज़रूरी नहीं
डिफ़ॉल्ट तौर पर, यह मौजूदा विंडो पर सेट होता है.
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:(tabs: Tab[]) => void
-
टैब
टैब[]
-
लौटाए गए प्रॉडक्ट
-
Promise<Tab[]>
Chrome 88+प्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.
getCurrent()
chrome.tabs.getCurrent(
callback?: function,
)
वह टैब ले जाता है जिससे स्क्रिप्ट कॉल किया जा रहा है. बिना टैब वाले कॉन्टेक्स्ट (उदाहरण के लिए, बैकग्राउंड पेज या पॉप-अप व्यू) से कॉल करने पर undefined
दिखाता है.
पैरामीटर
लौटाए गए प्रॉडक्ट
-
Promise<Tab | undefined>
Chrome 88+प्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.
getSelected()
chrome.tabs.getSelected(
windowId?: number,
callback?: function,
)
कृपया tabs.query
{active: true}
का इस्तेमाल करें.
बताई गई विंडो में चुने गए टैब को दिखाता है.
पैरामीटर
-
windowId
नंबर ज़रूरी नहीं
डिफ़ॉल्ट तौर पर, यह मौजूदा विंडो पर सेट होता है.
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:(tab: Tab) => void
-
टैब से
-
लौटाए गए प्रॉडक्ट
-
Promise<Tab>
Chrome 88+प्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.
getZoom()
chrome.tabs.getZoom(
tabId?: number,
callback?: function,
)
बताए गए टैब का मौजूदा ज़ूम फ़ैक्टर देता है.
पैरामीटर
-
tabId
नंबर ज़रूरी नहीं
टैब का वह आईडी जिससे मौजूदा ज़ूम फ़ैक्टर पाने का डेटा लिया जाता है; वह डिफ़ॉल्ट रूप से मौजूदा विंडो के ऐक्टिव टैब पर सेट होता है.
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:(zoomFactor: number) => void
-
zoomFactor
नंबर
टैब का मौजूदा ज़ूम फ़ैक्टर.
-
लौटाए गए प्रॉडक्ट
-
वादा<number>
Chrome 88+प्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.
getZoomSettings()
chrome.tabs.getZoomSettings(
tabId?: number,
callback?: function,
)
किसी दिए गए टैब की मौजूदा ज़ूम सेटिंग मिलती है.
पैरामीटर
-
tabId
नंबर ज़रूरी नहीं
टैब का आईडी जिससे मौजूदा ज़ूम सेटिंग पाने हैं; मौजूदा विंडो के ऐक्टिव टैब पर डिफ़ॉल्ट रूप से.
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:(zoomSettings: ZoomSettings) => void
-
zoomSettings
टैब की मौजूदा ज़ूम सेटिंग.
-
लौटाए गए प्रॉडक्ट
-
Promise<ZoomSettings>
Chrome 88+प्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.
goBack()
chrome.tabs.goBack(
tabId?: number,
callback?: function,
)
अगर पिछला पेज उपलब्ध हो, तो उस पर वापस जाएं.
पैरामीटर
-
tabId
नंबर ज़रूरी नहीं
वापस जाने के लिए टैब का आईडी; मौजूदा विंडो के चुने गए टैब पर डिफ़ॉल्ट रूप से लागू होता है.
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:() => void
लौटाए गए प्रॉडक्ट
-
Promise<void>
Chrome 88+प्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.
goForward()
chrome.tabs.goForward(
tabId?: number,
callback?: function,
)
अगर कोई दूसरा पेज उपलब्ध है, तो उस पर जाएं.
पैरामीटर
-
tabId
नंबर ज़रूरी नहीं
आगे की ओर नेविगेट करने के लिए टैब का आईडी; यह डिफ़ॉल्ट रूप से, मौजूदा विंडो के चुने गए टैब पर ले जाता है.
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:() => void
लौटाए गए प्रॉडक्ट
-
Promise<void>
Chrome 88+प्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.
group()
chrome.tabs.group(
options: object,
callback?: function,
)
किसी खास ग्रुप में एक या उससे ज़्यादा टैब जोड़ता है या अगर कोई ग्रुप नहीं चुना गया है, तो दिए गए टैब को नए ग्रुप में जोड़ता है.
पैरामीटर
-
विकल्प
ऑब्जेक्ट
-
createProperties
ऑब्जेक्ट ज़रूरी नहीं
ग्रुप बनाने के लिए कॉन्फ़िगरेशन. अगर groupId पहले से ही बताया गया हो, तो इसका इस्तेमाल नहीं किया जा सकता.
-
windowId
नंबर ज़रूरी नहीं
नए ग्रुप की विंडो. डिफ़ॉल्ट तौर पर, यह मौजूदा विंडो पर सेट होता है.
-
-
groupId
नंबर ज़रूरी नहीं
उस ग्रुप का आईडी जिसमें टैब जोड़ना है. अगर इसके लिए कोई तय नहीं किया गया है, तो एक नया ग्रुप बनाया जाएगा.
-
tabIds
नंबर | [नंबर, ...नंबर[]]
किसी ग्रुप में जोड़ने के लिए, टैब आईडी या टैब आईडी की सूची.
-
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:(groupId: number) => void
-
groupId
नंबर
उस ग्रुप का आईडी जिसमें टैब जोड़े गए थे.
-
लौटाए गए प्रॉडक्ट
-
वादा<number>
प्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.
highlight()
chrome.tabs.highlight(
highlightInfo: object,
callback?: function,
)
दिए गए टैब को हाइलाइट करता है और ग्रुप के पहले टैब पर फ़ोकस करता है. अगर चुना गया टैब फ़िलहाल ऐक्टिव है, तो वह कुछ नहीं करेगा.
पैरामीटर
-
highlightInfo
ऑब्जेक्ट
-
टैब
नंबर | नंबर[]
हाइलाइट करने के लिए एक या उससे ज़्यादा टैब इंडेक्स.
-
windowId
नंबर ज़रूरी नहीं
टैब वाली विंडो.
-
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:(window: Window) => void
-
विंडो
इसमें उस विंडो के बारे में जानकारी होती है जिसके टैब हाइलाइट किए गए थे.
-
लौटाए गए प्रॉडक्ट
-
वादा करें<windows.Window>
Chrome 88+प्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.
insertCSS()
chrome.tabs.insertCSS(
tabId?: number,
details: InjectDetails,
callback?: function,
)
मेनिफ़ेस्ट V3 में scripting.insertCSS
से बदला गया.
सीएसएस को किसी पेज में इंजेक्ट करता है. इस तरीके का इस्तेमाल करके शामिल की गई स्टाइल को scripting.removeCSS
की मदद से हटाया जा सकता है. ज़्यादा जानकारी के लिए, कॉन्टेंट स्क्रिप्ट दस्तावेज़ का प्रोग्रामैटिक इंजेक्शन सेक्शन देखें.
पैरामीटर
-
tabId
नंबर ज़रूरी नहीं
उस टैब का आईडी जिसमें सीएसएस को शामिल करना है. डिफ़ॉल्ट रूप से, मौजूदा विंडो के ऐक्टिव टैब पर स्विच होता है.
-
जानकारी
शामिल किए जाने वाले सीएसएस टेक्स्ट की जानकारी. कोड या फ़ाइल प्रॉपर्टी को सेट करना ज़रूरी है, लेकिन दोनों एक ही समय पर सेट नहीं किए जा सकते.
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:() => void
लौटाए गए प्रॉडक्ट
-
Promise<void>
Chrome 88+प्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.
move()
chrome.tabs.move(
tabIds: number | number[],
moveProperties: object,
callback?: function,
)
एक या उससे ज़्यादा टैब को उसकी विंडो में किसी नई जगह या नई विंडो पर ले जाता है. ध्यान दें कि टैब को सिर्फ़ सामान्य (window.type === "normal") विंडो पर ले जाया जा सकता है.
पैरामीटर
-
tabIds
नंबर | नंबर[]
टैब आईडी या टैब आईडी की सूची जिसे मूव करना है.
-
moveProperties
ऑब्जेक्ट
-
इंडेक्स
नंबर
विंडो को ले जाने की जगह. विंडो के आखिर में टैब को रखने के लिए,
-1
का इस्तेमाल करें. -
windowId
नंबर ज़रूरी नहीं
डिफ़ॉल्ट तौर पर, उस विंडो में होता है जिसमें टैब फ़िलहाल मौजूद है.
-
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
लौटाए गए प्रॉडक्ट
-
Chrome 88+
प्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.
query()
chrome.tabs.query(
queryInfo: object,
callback?: function,
)
उन सभी टैब को लाता है जिनमें बताई गई प्रॉपर्टी हैं. इसके अलावा, अगर कोई प्रॉपर्टी नहीं दी गई है, तो सभी टैब दिखाता है.
पैरामीटर
-
queryInfo
ऑब्जेक्ट
-
इस्तेमाल में है
बूलियन ज़रूरी नहीं
उनकी विंडो में टैब चालू हैं या नहीं.
-
Audible
बूलियन ज़रूरी नहीं
Chrome 45+क्या टैब सुने जा सकते हैं.
-
autoDiscardable
बूलियन ज़रूरी नहीं
Chrome 54 और इसके बाद के वर्शनसंसाधन कम होने पर ब्राउज़र, टैब को अपने-आप खारिज कर सकता है या नहीं.
-
currentWindow
बूलियन ज़रूरी नहीं
टैब मौजूदा विंडो में हैं या नहीं.
-
खारिज किया गया
बूलियन ज़रूरी नहीं
Chrome 54 और इसके बाद के वर्शनटैब खारिज किए गए हैं या नहीं. खारिज किया गया टैब वह टैब होता है जिसका कॉन्टेंट मेमोरी से अनलोड कर दिया गया है, लेकिन वह टैब बार में अब भी दिख रहा है. अगली बार चालू होने पर, इसका कॉन्टेंट फिर से लोड हो जाता है.
-
groupId
नंबर ज़रूरी नहीं
Chrome 88+उस ग्रुप का आईडी जिसमें टैब हैं या ग्रुप से बाहर रखे गए टैब के लिए
tabGroups.TAB_GROUP_ID_NONE
. -
हाइलाइट की गई
बूलियन ज़रूरी नहीं
टैब हाइलाइट किए गए हैं या नहीं.
-
इंडेक्स
नंबर ज़रूरी नहीं
उनकी विंडो में टैब की जगह.
-
lastFocusedWindow
बूलियन ज़रूरी नहीं
टैब पिछली फ़ोकस विंडो में हैं या नहीं.
-
म्यूट किया गया
बूलियन ज़रूरी नहीं
Chrome 45+टैब म्यूट किए गए हैं या नहीं.
-
पिन किया गया
बूलियन ज़रूरी नहीं
टैब पिन किए गए हैं या नहीं.
-
status
TabStatus ज़रूरी नहीं
टैब लोड होने की स्थिति.
-
title
स्ट्रिंग ज़रूरी नहीं
किसी पैटर्न के हिसाब से पेज के टाइटल का मिलान करें. अगर एक्सटेंशन के पास
"tabs"
की अनुमति नहीं है, तो इस प्रॉपर्टी को अनदेखा कर दिया जाता है. -
यूआरएल
स्ट्रिंग | string[] ज़रूरी नहीं
एक या एक से ज़्यादा यूआरएल पैटर्न के हिसाब से टैब का मिलान करें. फ़्रैगमेंट के आइडेंटिफ़ायर मेल नहीं खाते हैं. अगर एक्सटेंशन के पास
"tabs"
की अनुमति नहीं है, तो इस प्रॉपर्टी को अनदेखा कर दिया जाता है. -
windowId
नंबर ज़रूरी नहीं
पैरंट विंडो का आईडी या मौजूदा विंडो के लिए
windows.WINDOW_ID_CURRENT
. -
windowType
WindowType ज़रूरी नहीं
उस विंडो का टाइप जिसमें टैब हैं.
-
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:(result: Tab[]) => void
-
नतीजा
टैब[]
-
लौटाए गए प्रॉडक्ट
-
Promise<Tab[]>
Chrome 88+प्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.
reload()
chrome.tabs.reload(
tabId?: number,
reloadProperties?: object,
callback?: function,
)
टैब फिर से लोड करें.
पैरामीटर
-
tabId
नंबर ज़रूरी नहीं
वह टैब आईडी जिसे फिर से लोड करना है. यह डिफ़ॉल्ट रूप से, मौजूदा विंडो के चुने गए टैब पर सेट होता है.
-
reloadProperties
ऑब्जेक्ट ज़रूरी नहीं
-
bypassCache
बूलियन ज़रूरी नहीं
लोकल कैश मेमोरी को बायपास करना है या नहीं. डिफ़ॉल्ट वैल्यू
false
होती है.
-
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:() => void
लौटाए गए प्रॉडक्ट
-
Promise<void>
Chrome 88+प्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.
remove()
chrome.tabs.remove(
tabIds: number | number[],
callback?: function,
)
एक या उससे ज़्यादा टैब बंद करता है.
पैरामीटर
-
tabIds
नंबर | नंबर[]
बंद किए जाने वाले टैब आईडी या टैब आईडी की सूची.
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:() => void
लौटाए गए प्रॉडक्ट
-
Promise<void>
Chrome 88+प्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.
removeCSS()
chrome.tabs.removeCSS(
tabId?: number,
details: DeleteInjectionDetails,
callback?: function,
)
मेनिफ़ेस्ट V3 में scripting.removeCSS
से बदला गया.
उस पेज सीएसएस से हटाता है जिसे पहले scripting.insertCSS
को कॉल करके डाला गया था.
पैरामीटर
-
tabId
नंबर ज़रूरी नहीं
उस टैब का आईडी जिससे सीएसएस को हटाना है. डिफ़ॉल्ट रूप से, मौजूदा विंडो के ऐक्टिव टैब पर स्विच होता है.
-
जानकारी
जिस सीएसएस टेक्स्ट को हटाना है उसकी जानकारी. कोड या फ़ाइल प्रॉपर्टी को सेट करना ज़रूरी है, लेकिन दोनों एक ही समय पर सेट नहीं किए जा सकते.
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:() => void
लौटाए गए प्रॉडक्ट
-
Promise<void>
Chrome 88+प्रॉमिस सिर्फ़ मेनिफ़ेस्ट 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
को गड़बड़ी के मैसेज पर सेट कर दिया जाता है.
-
लौटाए गए प्रॉडक्ट
-
वादा<any>
Chrome 99 के बाद के वर्शनप्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.
sendRequest()
chrome.tabs.sendRequest(
tabId: number,
request: any,
callback?: function,
)
कृपया runtime.sendMessage
का इस्तेमाल करें.
यह बताए गए टैब में मौजूद कॉन्टेंट स्क्रिप्ट(स्क्रिप्ट) को एक अनुरोध भेजता है. साथ ही, जवाब देने पर एक वैकल्पिक कॉलबैक को चलाया जाता है. मौजूदा एक्सटेंशन के लिए तय किए गए टैब में चल रही हर कॉन्टेंट स्क्रिप्ट में extension.onRequest
इवेंट सक्रिय होता है.
पैरामीटर
-
tabId
नंबर
-
CANNOT TRANSLATE
कोई भी
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
Chrome 99 के बाद के वर्शनcallback
पैरामीटर ऐसा दिखता है:(response: any) => void
-
जवाब
कोई भी
अनुरोध के हैंडलर से भेजा गया JSON रिस्पॉन्स ऑब्जेक्ट. अगर बताए गए टैब से कनेक्ट करते समय कोई गड़बड़ी होती है, तो कॉलबैक को बिना किसी आर्ग्युमेंट के कॉल किया जाता है और
runtime.lastError
को गड़बड़ी के मैसेज पर सेट कर दिया जाता है.
-
लौटाए गए प्रॉडक्ट
-
वादा<any>
Chrome 99 के बाद के वर्शनप्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.
setZoom()
chrome.tabs.setZoom(
tabId?: number,
zoomFactor: number,
callback?: function,
)
चुने गए टैब को ज़ूम करता है.
पैरामीटर
-
tabId
नंबर ज़रूरी नहीं
टैब का आईडी, जिसे ज़ूम करना है. यह डिफ़ॉल्ट रूप से, मौजूदा विंडो के ऐक्टिव टैब पर सेट होता है.
-
zoomFactor
नंबर
ज़ूम करने की नई सुविधा.
0
की वैल्यू, टैब को मौजूदा डिफ़ॉल्ट ज़ूम फ़ैक्टर पर सेट करती है.0
से ज़्यादा वैल्यू चुनने पर, टैब पर ज़ूम इन किया जा सकता है और यह डिफ़ॉल्ट रूप से सेट नहीं होता. -
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:() => void
लौटाए गए प्रॉडक्ट
-
Promise<void>
Chrome 88+प्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.
setZoomSettings()
chrome.tabs.setZoomSettings(
tabId?: number,
zoomSettings: ZoomSettings,
callback?: function,
)
यह सुविधा किसी खास टैब के लिए ज़ूम की सेटिंग सेट करती है. इससे पता चलता है कि ज़ूम में किए गए बदलाव किस तरह से हैंडल किए जाएंगे. टैब नेविगेट करने पर, ये सेटिंग डिफ़ॉल्ट पर रीसेट हो जाती हैं.
पैरामीटर
-
tabId
नंबर ज़रूरी नहीं
टैब का आईडी, जिसकी ज़ूम सेटिंग बदलनी है; मौजूदा विंडो के ऐक्टिव टैब पर डिफ़ॉल्ट रूप से सेट होता है.
-
zoomSettings
इससे पता चलता है कि ज़ूम में किए गए बदलावों को कैसे और किस दायरे में मैनेज किया जाता है.
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:() => void
लौटाए गए प्रॉडक्ट
-
Promise<void>
Chrome 88+प्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.
ungroup()
chrome.tabs.ungroup(
tabIds: number | [number, ...number[]],
callback?: function,
)
एक या उससे ज़्यादा टैब को उनसे जुड़े ग्रुप से हटाता है. अगर कोई ग्रुप खाली हो जाता है, तो उसे मिटा दिया जाता है.
पैरामीटर
-
tabIds
नंबर | [नंबर, ...नंबर[]]
टैब आईडी या टैब आईडी की सूची, जिसे उनसे जुड़े ग्रुप से हटाना है.
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:() => void
लौटाए गए प्रॉडक्ट
-
Promise<void>
प्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.
update()
chrome.tabs.update(
tabId?: number,
updateProperties: object,
callback?: function,
)
टैब की प्रॉपर्टी में बदलाव करता है. जिन प्रॉपर्टी के बारे में updateProperties
में नहीं बताया गया है उनमें बदलाव नहीं किया जाता.
पैरामीटर
-
tabId
नंबर ज़रूरी नहीं
डिफ़ॉल्ट तौर पर, यह मौजूदा विंडो के चुने गए टैब पर सेट होता है.
-
updateProperties
ऑब्जेक्ट
-
इस्तेमाल में है
बूलियन ज़रूरी नहीं
टैब चालू होना चाहिए या नहीं. इस बात पर कोई असर नहीं पड़ता कि विंडो फ़ोकस है या नहीं (
windows.update
देखें). -
autoDiscardable
बूलियन ज़रूरी नहीं
Chrome 54 और इसके बाद के वर्शनसंसाधन कम होने पर ब्राउज़र, टैब को अपने-आप खारिज करे या नहीं.
-
हाइलाइट की गई
बूलियन ज़रूरी नहीं
मौजूदा चुने गए टैब को जोड़ता या हटाता है.
-
म्यूट किया गया
बूलियन ज़रूरी नहीं
Chrome 45+टैब को म्यूट किया जाना चाहिए या नहीं.
-
openerTabId
नंबर ज़रूरी नहीं
उस टैब का आईडी जिससे इस टैब को खोला गया था. अगर पहले से तय किया गया है, तो ओपनर टैब उसी विंडो में होना चाहिए जिसमें यह टैब है.
-
पिन किया गया
बूलियन ज़रूरी नहीं
टैब पिन किया जाना चाहिए या नहीं.
-
चुना गया
बूलियन ज़रूरी नहीं
अब सेवा में नहीं हैकृपया हाइलाइट किए गए का इस्तेमाल करें.
टैब चुना जाना चाहिए या नहीं.
-
यूआरएल
स्ट्रिंग ज़रूरी नहीं
वह यूआरएल जिस पर टैब को नेविगेट करना है. JavaScript यूआरएल इस्तेमाल नहीं किए जा सकते. इसके बजाय,
scripting.executeScript
का इस्तेमाल करें.
-
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:(tab?: Tab) => void
लौटाए गए प्रॉडक्ट
-
Promise<Tab | undefined>
Chrome 88+प्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.
इवेंट
onActivated
chrome.tabs.onActivated.addListener(
callback: function,
)
विंडो में ऐक्टिव टैब के बदलने पर ट्रिगर होता है. ध्यान दें कि हो सकता है कि इस इवेंट के ट्रिगर होने पर टैब का यूआरएल सेट न हो, लेकिन आपके पास onUpdated इवेंट को सुनने का विकल्प है, ताकि यूआरएल सेट होने पर आपको इसकी सूचना मिल सके.
पैरामीटर
-
कॉलबैक
function
callback
पैरामीटर ऐसा दिखता है:(activeInfo: object) => void
-
activeInfo
ऑब्जेक्ट
-
tabId
नंबर
चालू हो चुके टैब का आईडी.
-
windowId
नंबर
उस विंडो का आईडी जिसके अंदर ऐक्टिव टैब बदला गया था.
-
-
onActiveChanged
chrome.tabs.onActiveChanged.addListener(
callback: function,
)
कृपया tabs.onActivated
का इस्तेमाल करें.
किसी विंडो में चुने गए टैब के बदलने पर सक्रिय होता है. ध्यान दें कि हो सकता है कि इस इवेंट के सक्रिय होने पर टैब का यूआरएल सेट न हो, लेकिन यूआरएल सेट होने पर सूचना पाने के लिए आप tabs.onUpdated
इवेंट सुन सकते हैं.
पैरामीटर
-
कॉलबैक
function
callback
पैरामीटर ऐसा दिखता है:(tabId: number, selectInfo: object) => void
-
tabId
नंबर
-
selectInfo
ऑब्जेक्ट
-
windowId
नंबर
उस विंडो का आईडी जिसमें चुने गए टैब को बदला गया था.
-
-
onAttached
chrome.tabs.onAttached.addListener(
callback: function,
)
टैब के किसी विंडो से अटैच होने पर सक्रिय होता है; उदाहरण के लिए, क्योंकि इसे विंडो के बीच ले जाया गया था.
पैरामीटर
-
कॉलबैक
function
callback
पैरामीटर ऐसा दिखता है:(tabId: number, attachInfo: object) => void
-
tabId
नंबर
-
attachInfo
ऑब्जेक्ट
-
newPosition
नंबर
-
newWindowId
नंबर
-
-
onCreated
chrome.tabs.onCreated.addListener(
callback: function,
)
टैब बनाए जाने पर सक्रिय होता है. ध्यान दें, हो सकता है कि इस इवेंट के ट्रिगर होने पर टैब के यूआरएल और टैब ग्रुप की सदस्यता सेट न हो. हालांकि, आपके पास onअपडेट किए गए इवेंट सुनने का विकल्प होता है, ताकि किसी यूआरएल सेट किए जाने या टैब ग्रुप में जोड़े जाने पर आपको सूचना दी जा सके.
onDetached
chrome.tabs.onDetached.addListener(
callback: function,
)
टैब तब सक्रिय होता है, जब उसे किसी विंडो से अलग किया जाता है. उदाहरण के लिए, उसे विंडो के बीच ले जाया गया हो.
पैरामीटर
-
कॉलबैक
function
callback
पैरामीटर ऐसा दिखता है:(tabId: number, detachInfo: object) => void
-
tabId
नंबर
-
detachInfo
ऑब्जेक्ट
-
oldPosition
नंबर
-
oldWindowId
नंबर
-
-
onHighlightChanged
chrome.tabs.onHighlightChanged.addListener(
callback: function,
)
कृपया tabs.onHighlighted
का इस्तेमाल करें.
किसी विंडो में हाइलाइट किए गए या चुने गए टैब बदलने पर सक्रिय होता है.
पैरामीटर
-
कॉलबैक
function
callback
पैरामीटर ऐसा दिखता है:(selectInfo: object) => void
-
selectInfo
ऑब्जेक्ट
-
tabIds
नंबर[]
विंडो में हाइलाइट किए गए सभी टैब.
-
windowId
नंबर
वह विंडो जिसके टैब बदले गए हैं.
-
-
onHighlighted
chrome.tabs.onHighlighted.addListener(
callback: function,
)
किसी विंडो में हाइलाइट किए गए या चुने गए टैब बदलने पर सक्रिय होता है.
पैरामीटर
-
कॉलबैक
function
callback
पैरामीटर ऐसा दिखता है:(highlightInfo: object) => void
-
highlightInfo
ऑब्जेक्ट
-
tabIds
नंबर[]
विंडो में हाइलाइट किए गए सभी टैब.
-
windowId
नंबर
वह विंडो जिसके टैब बदले गए हैं.
-
-
onMoved
chrome.tabs.onMoved.addListener(
callback: function,
)
टैब को विंडो के अंदर ले जाने पर सक्रिय होता है. सिर्फ़ एक मूव इवेंट सक्रिय होता है, जो उपयोगकर्ता के सीधे मूव किए गए टैब को दिखाता है. जिन टैब को मैन्युअल रूप से ले जाए गए टैब के जवाब में मूव करना ज़रूरी है उनके लिए मूव इवेंट चालू नहीं किए जाते हैं. किसी टैब को अलग-अलग विंडो के बीच ले जाने पर, यह इवेंट ट्रिगर नहीं होता. ज़्यादा जानकारी के लिए, tabs.onDetached
देखें.
पैरामीटर
-
कॉलबैक
function
callback
पैरामीटर ऐसा दिखता है:(tabId: number, moveInfo: object) => void
-
tabId
नंबर
-
moveInfo
ऑब्जेक्ट
-
fromIndex
नंबर
-
toIndex
नंबर
-
windowId
नंबर
-
-
onRemoved
chrome.tabs.onRemoved.addListener(
callback: function,
)
टैब बंद होने पर सक्रिय होता है.
पैरामीटर
-
कॉलबैक
function
callback
पैरामीटर ऐसा दिखता है:(tabId: number, removeInfo: object) => void
-
tabId
नंबर
-
removeInfo
ऑब्जेक्ट
-
isWindowClosing
boolean
सही, जब टैब बंद था, क्योंकि इसकी पैरंट विंडो बंद थी.
-
windowId
नंबर
वह विंडो जिसका टैब बंद है.
-
-
onReplaced
chrome.tabs.onReplaced.addListener(
callback: function,
)
यह तब सक्रिय होता है, जब प्रीरेंडरिंग या तुरंत होने की वजह से किसी टैब को दूसरे टैब से बदल दिया जाता है.
पैरामीटर
-
कॉलबैक
function
callback
पैरामीटर ऐसा दिखता है:(addedTabId: number, removedTabId: number) => void
-
addedTabId
नंबर
-
removedTabId
नंबर
-
onSelectionChanged
chrome.tabs.onSelectionChanged.addListener(
callback: function,
)
कृपया tabs.onActivated
का इस्तेमाल करें.
किसी विंडो में चुने गए टैब के बदलने पर सक्रिय होता है.
पैरामीटर
-
कॉलबैक
function
callback
पैरामीटर ऐसा दिखता है:(tabId: number, selectInfo: object) => void
-
tabId
नंबर
-
selectInfo
ऑब्जेक्ट
-
windowId
नंबर
उस विंडो का आईडी जिसमें चुने गए टैब को बदला गया था.
-
-
onUpdated
chrome.tabs.onUpdated.addListener(
callback: function,
)
टैब अपडेट होने पर सक्रिय होता है.
पैरामीटर
-
कॉलबैक
function
callback
पैरामीटर ऐसा दिखता है:(tabId: number, changeInfo: object, tab: Tab) => void
-
tabId
नंबर
-
changeInfo
ऑब्जेक्ट
-
Audible
बूलियन ज़रूरी नहीं
Chrome 45+टैब की नई सुनाई देने की स्थिति.
-
autoDiscardable
बूलियन ज़रूरी नहीं
Chrome 54 और इसके बाद के वर्शनटैब की नई अपने-आप डिसकनेक्ट होने की स्थिति.
-
खारिज किया गया
बूलियन ज़रूरी नहीं
Chrome 54 और इसके बाद के वर्शनटैब की नई खारिज की गई स्थिति.
-
favIconUrl
स्ट्रिंग ज़रूरी नहीं
टैब का नया फ़ेविकॉन यूआरएल.
-
groupId
नंबर ज़रूरी नहीं
Chrome 88+टैब का नया ग्रुप.
-
mutedInfo
MutedInfo ज़रूरी नहीं है
Chrome 46 और इसके बाद के वर्शनटैब की नई म्यूट की गई स्थिति और बदलाव की वजह.
-
पिन किया गया
बूलियन ज़रूरी नहीं
टैब की पिन की गई नई स्थिति.
-
status
TabStatus ज़रूरी नहीं
टैब के लोड होने की स्थिति.
-
title
स्ट्रिंग ज़रूरी नहीं
Chrome 48 और उसके बाद के वर्शनटैब का नया टाइटल.
-
यूआरएल
स्ट्रिंग ज़रूरी नहीं
टैब का यूआरएल, अगर बदल गया हो.
-
-
टैब से
-
onZoomChange
chrome.tabs.onZoomChange.addListener(
callback: function,
)
टैब ज़ूम किए जाने पर सक्रिय होता है.
पैरामीटर
-
कॉलबैक
function
callback
पैरामीटर ऐसा दिखता है:(ZoomChangeInfo: object) => void
-
ZoomChangeInfo
ऑब्जेक्ट
-
newZoomFactor
नंबर
-
oldZoomFactor
नंबर
-
tabId
नंबर
-
zoomSettings
-
-