chrome.tabs

ब्यौरा

ब्राउज़र के टैब सिस्टम के साथ इंटरैक्ट करने के लिए, chrome.tabs एपीआई का इस्तेमाल करें. इस एपीआई का इस्तेमाल करके, ब्राउज़र में टैब बनाए जा सकते हैं, उनमें बदलाव किया जा सकता है, और उन्हें फिर से व्यवस्थित किया जा सकता है.

खास जानकारी देने वाला बटन

Tabs API, टैब को मैनेज करने और उनमें बदलाव करने की सुविधाएं देता है. साथ ही, यह टैब की भाषा का पता लगा सकता है, स्क्रीनशॉट ले सकता है, और टैब की कॉन्टेंट स्क्रिप्ट के साथ कम्यूनिकेट कर सकता है.

अनुमतियां

ज़्यादातर सुविधाओं का इस्तेमाल करने के लिए, किसी अनुमति की ज़रूरत नहीं होती. उदाहरण के लिए: नया टैब बनाना, टैब को फिर से लोड करना, किसी दूसरे यूआरएल पर नेविगेट करना वगैरह.

Tabs API का इस्तेमाल करते समय, डेवलपर को तीन अनुमतियों के बारे में पता होना चाहिए.

"टैब" की अनुमति
इस अनुमति से, chrome.tabs नेमस्पेस का ऐक्सेस नहीं मिलता. इसके बजाय, यह एक्सटेंशन को tabs.Tab इंस्टेंस पर मौजूद चार संवेदनशील प्रॉपर्टी के लिए, tabs.query() को कॉल करने की अनुमति देता है: 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

Chrome 46 या इसके बाद का वर्शन

टैब के म्यूट होने की स्थिति और पिछली बार स्थिति में बदलाव होने की वजह.

प्रॉपर्टी

  • extensionId

    string ज़रूरी नहीं है

    उस एक्सटेंशन का आईडी जिसने म्यूट किए गए स्टेटस को बदला है. अगर एक्सटेंशन की वजह से, म्यूट किए गए विज्ञापन की स्थिति में आखिरी बार बदलाव नहीं हुआ था, तो यह फ़ील्ड सेट नहीं होता.

  • म्यूट किया गया

    बूलियन

    यह टैब म्यूट किया गया है या नहीं. म्यूट करने का मतलब है कि इस टैब से आवाज़ नहीं आएगी. अगर किसी टैब में आवाज़ नहीं आ रही है या फ़िलहाल आवाज़ नहीं आ रही है, तो भी उसे म्यूट किया जा सकता है. यह इस बात के बराबर है कि ऑडियो इंडिकेटर 'म्यूट किया गया' दिख रहा है या नहीं.

  • वजह

    MutedInfoReason optional

    टैब को म्यूट या अनम्यूट करने की वजह. अगर टैब को कभी म्यूट नहीं किया गया है, तो यह कुकी सेट नहीं होती.

MutedInfoReason

Chrome 46 या इसके बाद का वर्शन

वह इवेंट जिसकी वजह से, म्यूट किए गए स्टेटस में बदलाव हुआ.

Enum

"उपयोगकर्ता"
उपयोगकर्ता के इनपुट की वजह से, म्यूट की स्थिति सेट की गई है.

"capture"
टैब कैप्चर करना शुरू कर दिया गया है. इससे, म्यूट किए जाने की स्थिति में बदलाव हुआ है.

"extension"
extensionId फ़ील्ड से पहचाने गए एक्सटेंशन ने म्यूट की स्थिति सेट की है.

Tab

प्रॉपर्टी

  • सक्रिय

    बूलियन

    यह टैब अपनी विंडो में ऐक्टिव है या नहीं. इसका यह मतलब नहीं है कि विंडो पर फ़ोकस किया गया है.

  • Audible

    बूलियन ज़रूरी नहीं है

    Chrome 45 या इसके बाद के वर्शन

    इससे पता चलता है कि क्या टैब से पिछले कुछ सेकंड में आवाज़ आई है. हालांकि, अगर टैब म्यूट है, तो आवाज़ नहीं सुनाई देगी. यह इस बात के बराबर है कि 'स्पीकर ऑडियो' इंडिकेटर दिख रहा है या नहीं.

  • autoDiscardable

    बूलियन

    Chrome 54 या इसके बाद का वर्शन

    जब संसाधन कम हों, तब क्या ब्राउज़र इस टैब को अपने-आप बंद कर सकता है.

  • खारिज किया गया

    बूलियन

    Chrome 54 या इसके बाद का वर्शन

    क्या टैब को खारिज कर दिया गया है. डिस्कार्ड किए गए टैब का मतलब ऐसे टैब से है जिसका कॉन्टेंट मेमोरी से अनलोड कर दिया गया है. हालांकि, यह टैब स्ट्रिप में अब भी दिखता है. अगली बार चालू होने पर, इसका कॉन्टेंट फिर से लोड हो जाता है.

  • favIconUrl

    string ज़रूरी नहीं है

    टैब के फ़ेविकॉन का यूआरएल. यह प्रॉपर्टी सिर्फ़ तब मौजूद होती है, जब एक्सटेंशन के पास "tabs" अनुमति हो या उसके पास पेज के लिए होस्ट अनुमतियां हों. अगर टैब लोड हो रहा है, तो यह खाली स्ट्रिंग भी हो सकती है.

  • फ़्रीज़

    बूलियन

    Chrome 132 या इसके बाद का वर्शन

    टैब फ़्रीज़ है या नहीं. फ़्रीज़ किया गया टैब, इवेंट हैंडलर या टाइमर जैसे टास्क पूरे नहीं कर सकता. यह टैब स्ट्रिप में दिखता है और इसका कॉन्टेंट मेमोरी में लोड होता है. चालू करने पर, इसे अनफ़्रीज़ कर दिया जाता है.

  • groupId

    संख्या

    Chrome 88 या इसके बाद का वर्शन

    उस ग्रुप का आईडी जिससे टैब जुड़ा है.

  • ऊंचाई

    number optional

    पिक्सल में टैब की लंबाई.

  • हाइलाइट की गई

    बूलियन

    टैब को हाइलाइट किया गया है या नहीं.

  • आईडी

    number optional

    टैब का आईडी. टैब आईडी, ब्राउज़र के किसी सेशन के लिए यूनीक होते हैं. कुछ मामलों में, टैब को आईडी असाइन नहीं किया जा सकता. उदाहरण के लिए, sessions एपीआई का इस्तेमाल करके, विदेशी टैब से क्वेरी करते समय. ऐसे मामले में, सेशन आईडी मौजूद हो सकता है. ऐप्लिकेशन और DevTools विंडो के लिए, टैब आईडी को chrome.tabs.TAB_ID_NONE पर भी सेट किया जा सकता है.

  • गुप्त

    बूलियन

    यह टैब गुप्त विंडो में है या नहीं.

  • इंडेक्स

    संख्या

    यह टैब के इंडेक्स की जानकारी देता है. इंडेक्स की गिनती शून्य से शुरू होती है.

  • lastAccessed

    संख्या

    Chrome 121 या इसके बाद का वर्शन

    इस टैब को आखिरी बार इसकी विंडो में ऐक्टिव किए जाने का समय. यह समय, epoch के बाद से मिलीसेकंड में होता है.

  • mutedInfo

    MutedInfo ज़रूरी नहीं

    Chrome 46 या इसके बाद का वर्शन

    टैब के म्यूट होने की स्थिति और पिछली बार स्थिति में बदलाव होने की वजह.

  • openerTabId

    number optional

    इस टैब को खोलने वाले टैब का आईडी. अगर कोई आईडी मौजूद नहीं है, तो यह फ़ील्ड मौजूद नहीं होगा. यह प्रॉपर्टी सिर्फ़ तब मौजूद होती है, जब ओपनर टैब अब भी मौजूद हो.

  • pendingUrl

    string ज़रूरी नहीं है

    Chrome 79 या इसके बाद का वर्शन

    यह वह यूआरएल है जिस पर टैब नेविगेट कर रहा है. हालांकि, अभी तक यह यूआरएल कमिट नहीं हुआ है. यह प्रॉपर्टी सिर्फ़ तब मौजूद होती है, जब एक्सटेंशन के पास "tabs" अनुमति हो या पेज के लिए होस्ट अनुमतियां हों और कोई नेविगेशन लंबित हो.

  • पिन की गईं

    बूलियन

    इससे पता चलता है कि टैब पिन किया गया है या नहीं.

  • चुना गया

    बूलियन

    अब काम नहीं करता

    कृपया tabs.Tab.highlighted का इस्तेमाल करें.

    क्या टैब चुना गया है.

  • sessionId

    string ज़रूरी नहीं है

    इस सेशन आईडी का इस्तेमाल, sessions एपीआई से मिले टैब की पहचान करने के लिए किया जाता है.

  • splitViewId

    number optional

    Chrome 140+

    उस स्प्लिट व्यू का आईडी जिससे टैब जुड़ा है.

  • स्थिति

    TabStatus ज़रूरी नहीं है

    टैब के लोड होने की स्थिति.

  • title

    string ज़रूरी नहीं है

    टैब का टाइटल. यह प्रॉपर्टी सिर्फ़ तब मौजूद होती है, जब एक्सटेंशन के पास "tabs" अनुमति हो या उसके पास पेज के लिए होस्ट अनुमतियां हों.

  • url

    string ज़रूरी नहीं है

    टैब के मुख्य फ़्रेम का आखिरी यूआरएल. यह प्रॉपर्टी सिर्फ़ तब मौजूद होती है, जब एक्सटेंशन के पास "tabs" अनुमति हो या उसके पास पेज के लिए होस्ट अनुमतियां हों. अगर टैब ने अब तक कमिट नहीं किया है, तो यह एक खाली स्ट्रिंग हो सकती है. Tab.pendingUrl भी देखें.

  • चौड़ाई

    number optional

    पिक्सल में टैब की चौड़ाई.

  • windowId

    संख्या

    उस विंडो का आईडी जिसमें टैब मौजूद है.

TabStatus

Chrome 44 या इसके बाद का वर्शन

टैब के लोड होने की स्थिति.

Enum

"unloaded"

"loading"

"complete"

WindowType

Chrome 44 या इसके बाद का वर्शन

विंडो का टाइप.

Enum

"normal"

"popup"

"panel"

"app"

"devtools"

ZoomSettings

इससे यह तय होता है कि किसी टैब में ज़ूम लेवल में हुए बदलावों को कैसे हैंडल किया जाता है और किस स्कोप में हैंडल किया जाता है.

प्रॉपर्टी

  • defaultZoomFactor

    number optional

    Chrome 43 या इसके बाद के वर्शन

    tabs.getZoomSettings को कॉल करने पर, मौजूदा टैब के लिए डिफ़ॉल्ट ज़ूम करने का लेवल वापस लाने के लिए इस्तेमाल किया जाता है.

  • मोड

    इससे यह तय होता है कि ज़ूम के बदलावों को कैसे हैंडल किया जाता है.इसका मतलब है कि पेज की असल स्केलिंग के लिए कौनसी इकाई ज़िम्मेदार है. इसकी डिफ़ॉल्ट वैल्यू automatic होती है.

  • दायरा

    इस नीति से यह तय होता है कि ज़ूम के बदलाव, पेज के ऑरिजिन के लिए बने रहेंगे या सिर्फ़ इस टैब में लागू होंगे. automatic मोड में होने पर, डिफ़ॉल्ट रूप से per-origin पर सेट होता है. वहीं, अन्य मोड में होने पर, per-tab पर सेट होता है.

ZoomSettingsMode

Chrome 44 या इसके बाद का वर्शन

इससे यह तय होता है कि ज़ूम के बदलावों को कैसे हैंडल किया जाता है.इसका मतलब है कि पेज की असल स्केलिंग के लिए कौनसी इकाई ज़िम्मेदार है. इसकी डिफ़ॉल्ट वैल्यू automatic होती है.

Enum

"automatic"
ज़ूम के बदलावों को ब्राउज़र अपने-आप मैनेज करता है.

"मैन्युअल"
ज़ूम के बदलावों को अपने-आप मैनेज करने की सुविधा को बंद कर देता है. onZoomChange इवेंट अब भी भेजा जाएगा. इस इवेंट को सुनने और पेज को मैन्युअल तरीके से स्केल करने की ज़िम्मेदारी एक्सटेंशन की होगी. इस मोड में, per-origin ज़ूम करने की सुविधा काम नहीं करती. इसलिए, यह scope ज़ूम सेटिंग को अनदेखा करता है और per-tab को डिफ़ॉल्ट सेटिंग के तौर पर इस्तेमाल करता है.

"disabled"
इस विकल्प को चुनने पर, टैब में ज़ूम करने की सुविधा बंद हो जाती है. टैब, ज़ूम के डिफ़ॉल्ट लेवल पर वापस आ जाता है. साथ ही, ज़ूम के लेवल में किए गए सभी बदलावों को अनदेखा कर दिया जाता है.

ZoomSettingsScope

Chrome 44 या इसके बाद का वर्शन

इस नीति से यह तय होता है कि ज़ूम के बदलाव, पेज के ऑरिजिन के लिए बने रहेंगे या सिर्फ़ इस टैब में लागू होंगे. automatic मोड में होने पर, डिफ़ॉल्ट रूप से per-origin पर सेट होता है. वहीं, अन्य मोड में होने पर, per-tab पर सेट होता है.

Enum

"per-origin"
ज़ूम किए गए पेज के ओरिजिन में ज़ूम के बदलाव बने रहते हैं. इसका मतलब है कि उसी ओरिजिन पर नेविगेट किए गए अन्य सभी टैब भी ज़ूम किए जाते हैं. इसके अलावा, per-origin ज़ूम के बदलावों को ऑरिजिन के साथ सेव किया जाता है. इसका मतलब है कि जब एक ही ऑरिजिन के अन्य पेजों पर नेविगेट किया जाता है, तो वे सभी एक ही ज़ूम फ़ैक्टर पर ज़ूम होते हैं. per-origin स्कोप सिर्फ़ automatic मोड में उपलब्ध है.

"per-tab"
ज़ूम लेवल में किए गए बदलाव सिर्फ़ इस टैब पर लागू होते हैं. साथ ही, दूसरे टैब में किए गए बदलावों का असर इस टैब के ज़ूम लेवल पर नहीं पड़ता. इसके अलावा, per-tab नेविगेशन पर ज़ूम के लेवल में किए गए बदलाव रीसेट हो जाते हैं. किसी टैब पर नेविगेट करने पर, पेज हमेशा अपने per-origin ज़ूम फ़ैक्टर के साथ लोड होते हैं.

प्रॉपर्टी

MAX_CAPTURE_VISIBLE_TAB_CALLS_PER_SECOND

Chrome 92 या इसके बाद का वर्शन

captureVisibleTab को हर सेकंड में ज़्यादा से ज़्यादा कितनी बार कॉल किया जा सकता है. captureVisibleTab महंगा है और इसे बार-बार कॉल नहीं किया जाना चाहिए.

वैल्यू

2

SPLIT_VIEW_ID_NONE

Chrome 140+

यह आईडी, स्प्लिट टैब के मौजूद न होने की जानकारी देता है.

वैल्यू

-1

TAB_ID_NONE

Chrome 46 या इसके बाद का वर्शन

यह आईडी, ब्राउज़र टैब के मौजूद न होने की जानकारी देता है.

वैल्यू

-1

TAB_INDEX_NONE

Chrome 123 या इसके बाद के वर्शन

यह इंडेक्स, tab_strip में टैब इंडेक्स के मौजूद न होने की जानकारी देता है.

वैल्यू

-1

तरीके

captureVisibleTab()

Promise
chrome.tabs.captureVisibleTab(
  windowId?: number,
  options?: ImageDetails,
  callback?: function,
)
: Promise<string>

यह फ़ंक्शन, चुनी गई विंडो में फ़िलहाल खुले हुए टैब के दिखने वाले हिस्से को कैप्चर करता है. इस तरीके को कॉल करने के लिए, एक्सटेंशन के पास <all_urls> अनुमति या activeTab अनुमति होनी चाहिए. आम तौर पर, एक्सटेंशन जिन साइटों को ऐक्सेस कर सकते हैं उनके अलावा, इस तरीके से एक्सटेंशन उन संवेदनशील साइटों को भी कैप्चर कर सकते हैं जिन पर आम तौर पर पाबंदी होती है. इनमें chrome:-स्कीम वाले पेज, अन्य एक्सटेंशन के पेज, और data: यूआरएल शामिल हैं. इन संवेदनशील साइटों को सिर्फ़ activeTab अनुमति के साथ कैप्चर किया जा सकता है. फ़ाइल के यूआरएल सिर्फ़ तब कैप्चर किए जा सकते हैं, जब एक्सटेंशन को फ़ाइल का ऐक्सेस दिया गया हो.

पैरामीटर

  • windowId

    number optional

    टारगेट विंडो. डिफ़ॉल्ट रूप से, यह मौजूदा विंडो पर सेट होती है.

  • विकल्प

    ImageDetails ज़रूरी नहीं है

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं

    callback पैरामीटर ऐसा दिखता है:

    (dataUrl: string) => void

    • dataUrl

      स्ट्रिंग

      यह एक डेटा यूआरएल होता है. इसमें कैप्चर किए गए टैब के दिखने वाले हिस्से की इमेज को कोड में बदला जाता है. इसे दिखाने के लिए, एचटीएमएल img एलिमेंट की 'src' प्रॉपर्टी को असाइन किया जा सकता है.

रिटर्न

  • Promise<string>

    Chrome 88 या इसके बाद का वर्शन

    प्रॉमिस सिर्फ़ Manifest V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.

connect()

chrome.tabs.connect(
  tabId: number,
  connectInfo?: object,
)
: runtime.Port

यह कुकी, तय किए गए टैब में मौजूद कॉन्टेंट स्क्रिप्ट से कनेक्ट होती है. runtime.onConnect इवेंट, मौजूदा एक्सटेंशन के लिए तय किए गए टैब में चल रही हर कॉन्टेंट स्क्रिप्ट में ट्रिगर होता है. ज़्यादा जानकारी के लिए, कॉन्टेंट स्क्रिप्ट मैसेजिंग लेख पढ़ें.

पैरामीटर

  • tabId

    संख्या

  • connectInfo

    ऑब्जेक्ट ज़रूरी नहीं

    • documentId

      string ज़रूरी नहीं है

      Chrome 106 या इसके बाद के वर्शन

      टैब में मौजूद सभी फ़्रेम के बजाय, documentId से पहचाने गए किसी खास दस्तावेज़ के लिए पोर्ट खोलें.

    • frameId

      number optional

      टैब में मौजूद सभी फ़्रेम के बजाय, frameId से पहचाने गए किसी खास फ़्रेम के लिए पोर्ट खोलें.

    • नाम

      string ज़रूरी नहीं है

      इसे onConnect में पास किया जाता है. ऐसा उन कॉन्टेंट स्क्रिप्ट के लिए किया जाता है जो कनेक्शन इवेंट को सुन रही हैं.

रिटर्न

  • यह एक ऐसा पोर्ट है जिसका इस्तेमाल, तय किए गए टैब में चल रही कॉन्टेंट स्क्रिप्ट से कम्यूनिकेट करने के लिए किया जा सकता है. अगर टैब बंद हो जाता है या मौजूद नहीं होता है, तो पोर्ट का runtime.Port इवेंट ट्रिगर होता है.

create()

Promise
chrome.tabs.create(
  createProperties: object,
  callback?: function,
)
: Promise<Tab>

इससे एक नया टैब खुलता है.

पैरामीटर

  • createProperties

    ऑब्जेक्ट

    • सक्रिय

      बूलियन ज़रूरी नहीं है

      क्या टैब को विंडो में ऐक्टिव टैब बनाना चाहिए. इससे इस बात पर कोई असर नहीं पड़ता कि विंडो फ़ोकस की गई है या नहीं (windows.update देखें). डिफ़ॉल्ट रूप से इसकी वैल्यू true होती है.

    • इंडेक्स

      number optional

      विंडो में टैब की पोज़िशन. दी गई वैल्यू को विंडो में मौजूद टैब की संख्या और शून्य के बीच में रखा जाता है.

    • openerTabId

      number optional

      उस टैब का आईडी जिसने इस टैब को खोला है. अगर ऐसा तय किया गया है, तो ओपनर टैब उसी विंडो में होना चाहिए जिसमें नया टैब बनाया गया है.

    • पिन की गईं

      बूलियन ज़रूरी नहीं है

      क्या टैब को पिन किया जाना चाहिए. डिफ़ॉल्ट रूप से false पर सेट होता है

    • चुना गया

      बूलियन ज़रूरी नहीं है

      अब काम नहीं करता

      कृपया चालू है का इस्तेमाल करें.

      क्या टैब को विंडो में चुना गया टैब बनाना चाहिए. डिफ़ॉल्ट रूप से true पर सेट होता है

    • splitWithTabId

      number optional

      Chrome 155 या इसके बाद के वर्शन

      स्प्लिट व्यू बनाने के लिए, किसी मौजूदा टैब का आईडी. अगर स्प्लिट-विथ टैब की जानकारी दी गई है, तो यह इन शर्तों के मुताबिक होनी चाहिए:

      • यह पहले से स्प्लिट किया गया टैब नहीं होना चाहिए.
      • यह उसी विंडो में होना चाहिए जिसमें नया टैब बनाया गया है.
      • अगर windowId तय किया गया है, तो यह स्प्लिट-विंडो टैब के विंडो आईडी के बराबर होना चाहिए.
      • अगर index तय किया गया है, तो यह स्प्लिट-विद टैब के बगल में मौजूद इंडेक्स होना चाहिए. इससे, नए बनाए गए टैब की पोज़िशन पर असर पड़ेगा.
    • url

      string ज़रूरी नहीं है

      वह यूआरएल जिस पर टैब को शुरू में ले जाना है. पूरी तरह से क्वालिफ़ाइड यूआरएल में एक स्कीम शामिल होनी चाहिए. जैसे, 'http://www.google.com' होना चाहिए, न कि 'www.google.com'). रिलेटिव यूआरएल, एक्सटेंशन में मौजूद मौजूदा पेज के हिसाब से होते हैं. यह डिफ़ॉल्ट रूप से, 'नया टैब' पेज पर सेट होता है.

    • windowId

      number optional

      वह विंडो जिसमें नया टैब बनाना है. डिफ़ॉल्ट रूप से, यह मौजूदा विंडो पर सेट होती है.

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं

    callback पैरामीटर ऐसा दिखता है:

    (tab: Tab) => void

    • टैब

      बनाया गया टैब.

रिटर्न

  • Promise<Tab>

    Chrome 88 या इसके बाद का वर्शन

    प्रॉमिस सिर्फ़ Manifest V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.

createSplit()

Promise Chrome 155 या इसके बाद के वर्शन
chrome.tabs.createSplit(
  tabIds: [number, number],
  callback?: function,
)
: Promise<number>

यह सुविधा, दो मौजूदा टैब को स्प्लिट व्यू में खोलती है.

पैरामीटर

  • tabIds

    [number, number]

    स्प्लिट व्यू में पेयर करने के लिए, ठीक दो टैब आईडी का कलेक्शन. सभी टैब के लिए, इन शर्तों को पूरा करना ज़रूरी है:

    ये एक-दूसरे के बगल में होने चाहिए. वे पहले से ही स्प्लिट व्यू में नहीं होने चाहिए. इनके windowId, pinned, और groupId की स्थितियां एक जैसी होनी चाहिए.

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं

    callback पैरामीटर ऐसा दिखता है:

    (splitViewId: number) => void

    • splitViewId

      संख्या

      यह उस नए स्प्लिट व्यू का आईडी है जिसमें बताए गए टैब शामिल हैं.

रिटर्न

  • Promise<number>

    प्रॉमिस सिर्फ़ Manifest V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.

detectLanguage()

Promise
chrome.tabs.detectLanguage(
  tabId?: number,
  callback?: function,
)
: Promise<string>

यह कुकी, किसी टैब में मौजूद कॉन्टेंट की मुख्य भाषा का पता लगाती है.

पैरामीटर

  • tabId

    number optional

    डिफ़ॉल्ट रूप से, यह मौजूदा विंडो के ऐक्टिव टैब पर सेट होता है.

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं

    callback पैरामीटर ऐसा दिखता है:

    (language: string) => void

    • भाषा

      स्ट्रिंग

      आईएसओ भाषा कोड, जैसे कि en या fr. इस तरीके के साथ काम करने वाली भाषाओं की पूरी सूची देखने के लिए, kLanguageInfoTable देखें. दूसरे से चौथे कॉलम तक की जांच की जाती है और पहली ऐसी वैल्यू दिखाई जाती है जो शून्य नहीं है. हालांकि, सरलीकृत चीनी भाषा के लिए zh-CN दिखाया जाता है. अगर भाषा की जानकारी नहीं है, तो und वैल्यू मिलती है.

रिटर्न

  • Promise<string>

    Chrome 88 या इसके बाद का वर्शन

    प्रॉमिस सिर्फ़ Manifest V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.

discard()

Promise Chrome 54 या इसके बाद के वर्शन
chrome.tabs.discard(
  tabId?: number,
  callback?: function,
)
: Promise<Tab | undefined>

यह कुकी, मेमोरी से किसी टैब को हटा देती है. बंद किए गए टैब, टैब बार पर अब भी दिखते हैं. इन्हें चालू करने पर, ये फिर से लोड हो जाते हैं.

पैरामीटर

  • tabId

    number optional

    हटाए जाने वाले टैब का आईडी. अगर यह विकल्प चुना जाता है, तो टैब को तब तक खारिज नहीं किया जाता, जब तक वह चालू न हो या पहले से खारिज न किया गया हो. अगर इस विकल्प को शामिल नहीं किया जाता है, तो ब्राउज़र सबसे कम ज़रूरी टैब को खारिज कर देता है. अगर बंद किए जा सकने वाले कोई टैब मौजूद नहीं हैं, तो यह फ़ंक्शन काम नहीं करेगा.

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं

    callback पैरामीटर ऐसा दिखता है:

    (tab?: Tab) => void

    • टैब

      टैब ज़रूरी नहीं है

      अगर टैब को खारिज कर दिया गया है, तो उसे खारिज किया गया टैब; अगर ऐसा नहीं हुआ है, तो उसे 'तय नहीं किया गया' के तौर पर दिखाया जाएगा.

रिटर्न

  • Promise<Tab | undefined>

    Chrome 88 या इसके बाद का वर्शन

    कार्रवाई पूरी होने के बाद, यह रिज़ॉल्व हो जाता है.

    प्रॉमिस सिर्फ़ Manifest V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.

duplicate()

Promise
chrome.tabs.duplicate(
  tabId: number,
  callback?: function,
)
: Promise<Tab | undefined>

इससे किसी टैब का डुप्लीकेट बनाया जाता है.

पैरामीटर

  • tabId

    संख्या

    उस टैब का आईडी जिसका डुप्लीकेट बनाना है.

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं

    callback पैरामीटर ऐसा दिखता है:

    (tab?: Tab) => void

    • टैब

      टैब ज़रूरी नहीं है

      डुप्लीकेट किए गए टैब के बारे में जानकारी. url, pendingUrl, title, और favIconUrl प्रॉपर्टी सिर्फ़ तब tabs.Tab ऑब्जेक्ट में शामिल की जाती हैं, जब एक्सटेंशन के पास "tabs" अनुमति हो या उसके पास पेज के लिए होस्ट अनुमतियां हों.

रिटर्न

  • Promise<Tab | undefined>

    Chrome 88 या इसके बाद का वर्शन

    प्रॉमिस सिर्फ़ Manifest V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.

executeScript()

Promise &leq; MV2 Chrome 91 से काम नहीं कर रहा है
chrome.tabs.executeScript(
  tabId?: number,
  details: InjectDetails,
  callback?: function,
)
: Promise<any[] | undefined>

Manifest V3 में, इसे scripting.executeScript से बदल दिया गया है.

यह कुकी, पेज में JavaScript कोड इंजेक्ट करती है. ज़्यादा जानकारी के लिए, कॉन्टेंट स्क्रिप्ट के दस्तावेज़ का प्रोग्राम के हिसाब से स्क्रिप्ट डालना सेक्शन देखें.

पैरामीटर

  • tabId

    number optional

    उस टैब का आईडी जिसमें स्क्रिप्ट को चलाना है. डिफ़ॉल्ट रूप से, यह मौजूदा विंडो के ऐक्टिव टैब पर सेट होता है.

  • विवरण

    चलाने के लिए स्क्रिप्ट की जानकारी. कोड या फ़ाइल प्रॉपर्टी में से किसी एक को सेट करना ज़रूरी है. हालांकि, दोनों को एक साथ सेट नहीं किया जा सकता.

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं

    callback पैरामीटर ऐसा दिखता है:

    (result?: any[]) => void

    • नतीजा

      any[] optional

      इंजेक्ट किए गए हर फ़्रेम में स्क्रिप्ट का नतीजा.

रिटर्न

  • Promise<any[] | undefined>

    Chrome 88 या इसके बाद का वर्शन

    सभी JavaScript के एक्ज़ीक्यूट होने के बाद, यह समस्या हल हो जाती है.

    प्रॉमिस सिर्फ़ Manifest V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.

get()

Promise
chrome.tabs.get(
  tabId: number,
  callback?: function,
)
: Promise<Tab>

यह फ़ंक्शन, तय किए गए टैब के बारे में जानकारी देता है.

पैरामीटर

  • tabId

    संख्या

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं

    callback पैरामीटर ऐसा दिखता है:

    (tab: Tab) => void

रिटर्न

  • Promise<Tab>

    Chrome 88 या इसके बाद का वर्शन

    प्रॉमिस सिर्फ़ Manifest V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.

getAllInWindow()

Promise &leq; MV2 Deprecated
chrome.tabs.getAllInWindow(
  windowId?: number,
  callback?: function,
)
: Promise<Tab[]>

कृपया tabs.query {windowId: windowId} का इस्तेमाल करें.

इससे दी गई विंडो में मौजूद सभी टैब के बारे में जानकारी मिलती है.

पैरामीटर

  • windowId

    number optional

    डिफ़ॉल्ट रूप से, यह मौजूदा विंडो पर सेट होती है.

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं

    callback पैरामीटर ऐसा दिखता है:

    (tabs: Tab[]) => void

    • टैब

      Tab[]

रिटर्न

  • Promise<Tab[]>

    Chrome 88 या इसके बाद का वर्शन

    प्रॉमिस सिर्फ़ Manifest V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.

getCurrent()

Promise
chrome.tabs.getCurrent(
  callback?: function,
)
: Promise<Tab | undefined>

यह उस टैब को दिखाता है जिससे यह स्क्रिप्ट कॉल किया जा रहा है. अगर इसे टैब के अलावा किसी अन्य कॉन्टेक्स्ट (उदाहरण के लिए, बैकग्राउंड पेज या पॉप-अप व्यू) से कॉल किया जाता है, तो यह undefined दिखाता है.

पैरामीटर

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं

    callback पैरामीटर ऐसा दिखता है:

    (tab?: Tab) => void

    • टैब

      टैब ज़रूरी नहीं है

रिटर्न

  • Promise<Tab | undefined>

    Chrome 88 या इसके बाद का वर्शन

    प्रॉमिस सिर्फ़ Manifest V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.

getSelected()

Promise &leq; MV2 Deprecated
chrome.tabs.getSelected(
  windowId?: number,
  callback?: function,
)
: Promise<Tab>

कृपया tabs.query {active: true} का इस्तेमाल करें.

इससे, तय की गई विंडो में चुना गया टैब मिलता है.

पैरामीटर

  • windowId

    number optional

    डिफ़ॉल्ट रूप से, यह मौजूदा विंडो पर सेट होती है.

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं

    callback पैरामीटर ऐसा दिखता है:

    (tab: Tab) => void

रिटर्न

  • Promise<Tab>

    Chrome 88 या इसके बाद का वर्शन

    प्रॉमिस सिर्फ़ Manifest V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.

getZoom()

Promise
chrome.tabs.getZoom(
  tabId?: number,
  callback?: function,
)
: Promise<number>

यह किसी टैब का मौजूदा ज़ूम फ़ैक्टर पता करता है.

पैरामीटर

  • tabId

    number optional

    उस टैब का आईडी जिससे मौजूदा ज़ूम फ़ैक्टर पाना है. डिफ़ॉल्ट रूप से, यह मौजूदा विंडो का ऐक्टिव टैब होता है.

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं

    callback पैरामीटर ऐसा दिखता है:

    (zoomFactor: number) => void

    • zoomFactor

      संख्या

      टैब का मौजूदा ज़ूम लेवल.

रिटर्न

  • Promise<number>

    Chrome 88 या इसके बाद का वर्शन

    यह फ़ेच किए जाने के बाद, टैब के मौजूदा ज़ूम फ़ैक्टर के साथ रिज़ॉल्व हो जाता है.

    प्रॉमिस सिर्फ़ Manifest V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.

getZoomSettings()

Promise
chrome.tabs.getZoomSettings(
  tabId?: number,
  callback?: function,
)
: Promise<ZoomSettings>

यह फ़ंक्शन, किसी टैब की मौजूदा ज़ूम सेटिंग को दिखाता है.

पैरामीटर

  • tabId

    number optional

    ज़ूम की मौजूदा सेटिंग पाने के लिए, टैब का आईडी. डिफ़ॉल्ट रूप से, यह मौजूदा विंडो के चालू टैब पर सेट होता है.

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं

    callback पैरामीटर ऐसा दिखता है:

    (zoomSettings: ZoomSettings) => void

    • zoomSettings

      टैब की मौजूदा ज़ूम सेटिंग.

रिटर्न

  • Promise<ZoomSettings>

    Chrome 88 या इसके बाद का वर्शन

    यह टैब की मौजूदा ज़ूम सेटिंग के साथ रिज़ॉल्व हो जाता है.

    प्रॉमिस सिर्फ़ Manifest V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.

goBack()

Promise Chrome 72 या इसके बाद के वर्शन
chrome.tabs.goBack(
  tabId?: number,
  callback?: function,
)
: Promise<void>

अगर कोई पिछला पेज उपलब्ध है, तो उस पर वापस जाएं.

पैरामीटर

  • tabId

    number optional

    यह उस टैब का आईडी होता है जिस पर वापस जाना है. डिफ़ॉल्ट रूप से, यह मौजूदा विंडो का चुना गया टैब होता है.

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं

    callback पैरामीटर ऐसा दिखता है:

    () => void

रिटर्न

  • Promise<void>

    Chrome 88 या इसके बाद का वर्शन

    प्रॉमिस सिर्फ़ Manifest V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.

goForward()

Promise Chrome 72 या इसके बाद के वर्शन
chrome.tabs.goForward(
  tabId?: number,
  callback?: function,
)
: Promise<void>

अगर कोई अगला पेज उपलब्ध है, तो उस पर जाएं.

पैरामीटर

  • tabId

    number optional

    आगे बढ़ने के लिए टैब का आईडी; डिफ़ॉल्ट रूप से, यह मौजूदा विंडो के चुने गए टैब पर सेट होता है.

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं

    callback पैरामीटर ऐसा दिखता है:

    () => void

रिटर्न

  • Promise<void>

    Chrome 88 या इसके बाद का वर्शन

    प्रॉमिस सिर्फ़ Manifest V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.

group()

Promise Chrome 88 या इसके बाद के वर्शन
chrome.tabs.group(
  options: object,
  callback?: function,
)
: Promise<number>

यह कमांड, एक या उससे ज़्यादा टैब को किसी ग्रुप में जोड़ती है. अगर कोई ग्रुप नहीं चुना जाता है, तो यह कमांड दिए गए टैब को नए ग्रुप में जोड़ती है.

पैरामीटर

  • विकल्प

    ऑब्जेक्ट

    • createProperties

      ऑब्जेक्ट ज़रूरी नहीं

      ग्रुप बनाने के लिए कॉन्फ़िगरेशन. अगर groupId पहले से तय है, तो इसका इस्तेमाल नहीं किया जा सकता.

      • windowId

        number optional

        नए ग्रुप की विंडो. डिफ़ॉल्ट रूप से, यह मौजूदा विंडो पर सेट होता है.

    • groupId

      number optional

      उस ग्रुप का आईडी जिसमें टैब जोड़ने हैं. अगर कोई ग्रुप नहीं चुना जाता है, तो एक नया ग्रुप बन जाएगा.

    • tabIds

      number | [number, ...number[]]

      टैब आईडी या टैब आईडी की सूची, जिसे चुने गए ग्रुप में जोड़ना है.

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं

    callback पैरामीटर ऐसा दिखता है:

    (groupId: number) => void

    • groupId

      संख्या

      उस ग्रुप का आईडी जिसमें टैब जोड़े गए थे.

रिटर्न

  • Promise<number>

    प्रॉमिस सिर्फ़ Manifest V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.

highlight()

Promise
chrome.tabs.highlight(
  highlightInfo: object,
  callback?: function,
)
: Promise<windows.Window>

इससे दिए गए टैब हाइलाइट होते हैं और ग्रुप के पहले टैब पर फ़ोकस किया जाता है. अगर बताया गया टैब फ़िलहाल ऐक्टिव है, तो यह कमांड कुछ नहीं करेगी.

पैरामीटर

  • highlightInfo

    ऑब्जेक्ट

    • टैब

      number | number[]

      हाइलाइट करने के लिए एक या इससे ज़्यादा टैब इंडेक्स.

    • windowId

      number optional

      वह विंडो जिसमें टैब मौजूद हैं.

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं

    callback पैरामीटर ऐसा दिखता है:

    (window: Window) => void

    • विंडो

      इसमें उस विंडो के बारे में जानकारी होती है जिसके टैब हाइलाइट किए गए थे.

रिटर्न

  • Chrome 88 या इसके बाद का वर्शन

    प्रॉमिस सिर्फ़ Manifest V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.

insertCSS()

Promise &leq; MV2 Chrome 91 से काम नहीं कर रहा है
chrome.tabs.insertCSS(
  tabId?: number,
  details: InjectDetails,
  callback?: function,
)
: Promise<void>

Manifest V3 में, इसे scripting.insertCSS से बदल दिया गया है.

यह कुकी, पेज में सीएसएस इंजेक्ट करती है. इस तरीके से जोड़े गए स्टाइल को scripting.removeCSS की मदद से हटाया जा सकता है. ज़्यादा जानकारी के लिए, कॉन्टेंट स्क्रिप्ट के दस्तावेज़ का प्रोग्राम के हिसाब से स्क्रिप्ट डालना सेक्शन देखें.

पैरामीटर

  • tabId

    number optional

    उस टैब का आईडी जिसमें सीएसएस को शामिल करना है. डिफ़ॉल्ट रूप से, यह मौजूदा विंडो का ऐक्टिव टैब होता है.

  • विवरण

    सीएसएस टेक्स्ट डालने की जानकारी. कोड या फ़ाइल प्रॉपर्टी में से किसी एक को सेट करना ज़रूरी है. हालांकि, दोनों को एक साथ सेट नहीं किया जा सकता.

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं

    callback पैरामीटर ऐसा दिखता है:

    () => void

रिटर्न

  • Promise<void>

    Chrome 88 या इसके बाद का वर्शन

    यह तब हल होता है, जब सभी सीएसएस को शामिल कर लिया जाता है.

    प्रॉमिस सिर्फ़ Manifest V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.

move()

Promise
chrome.tabs.move(
  tabIds: number | number[],
  moveProperties: object,
  callback?: function,
)
: Promise<Tab | Tab[]>

इससे एक या उससे ज़्यादा टैब को उसकी विंडो में नई जगह पर ले जाया जाता है या नई विंडो में ले जाया जाता है. ध्यान दें कि टैब को सिर्फ़ सामान्य (window.type === "normal") विंडो में ले जाया जा सकता है.

पैरामीटर

  • tabIds

    number | number[]

    जिस टैब को मूव करना है उसका आईडी या टैब आईडी की सूची.

  • moveProperties

    ऑब्जेक्ट

    • इंडेक्स

      संख्या

      विंडो को ले जाने की जगह. विंडो के आखिर में टैब रखने के लिए, -1 का इस्तेमाल करें.

    • windowId

      number optional

      डिफ़ॉल्ट रूप से, उस विंडो को चुना जाता है जिसमें टैब मौजूद है.

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं

    callback पैरामीटर ऐसा दिखता है:

    (tabs: Tab | Tab[]) => void

    • टैब

      Tab | Tab[]

      जिन टैब को दूसरी विंडो में ले जाया गया है उनके बारे में जानकारी.

रिटर्न

  • Promise<Tab | Tab[]>

    Chrome 88 या इसके बाद का वर्शन

    प्रॉमिस सिर्फ़ Manifest V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.

query()

Promise
chrome.tabs.query(
  queryInfo: object,
  callback?: function,
)
: Promise<Tab[]>

यह उन सभी टैब को दिखाता है जिनमें बताई गई प्रॉपर्टी मौजूद हैं. अगर कोई प्रॉपर्टी नहीं बताई गई है, तो यह सभी टैब दिखाता है.

पैरामीटर

  • queryInfo

    ऑब्जेक्ट

    • सक्रिय

      बूलियन ज़रूरी नहीं है

      टैब अपनी विंडो में चालू हैं या नहीं.

    • Audible

      बूलियन ज़रूरी नहीं है

      Chrome 45 या इसके बाद के वर्शन

      क्या टैब में आवाज़ आ रही है.

    • autoDiscardable

      बूलियन ज़रूरी नहीं है

      Chrome 54 या इसके बाद का वर्शन

      इससे यह तय होता है कि संसाधन कम होने पर, ब्राउज़र टैब को अपने-आप बंद कर सकता है या नहीं.

    • currentWindow

      बूलियन ज़रूरी नहीं है

      क्या टैब मौजूदा विंडो में हैं.

    • खारिज किया गया

      बूलियन ज़रूरी नहीं है

      Chrome 54 या इसके बाद का वर्शन

      क्या टैब खारिज किए गए हैं. डिस्कार्ड किए गए टैब का मतलब ऐसे टैब से है जिसका कॉन्टेंट मेमोरी से अनलोड कर दिया गया है. हालांकि, यह टैब स्ट्रिप में अब भी दिखता है. अगली बार चालू होने पर, इसका कॉन्टेंट फिर से लोड हो जाता है.

    • फ़्रीज़

      बूलियन ज़रूरी नहीं है

      Chrome 132 या इसके बाद का वर्शन

      टैब फ़्रीज़ किए गए हैं या नहीं. फ़्रीज़ किया गया टैब, इवेंट हैंडलर या टाइमर जैसे टास्क पूरे नहीं कर सकता. यह टैब स्ट्रिप में दिखता है और इसका कॉन्टेंट मेमोरी में लोड होता है. चालू करने पर, इसे अनफ़्रीज़ कर दिया जाता है.

    • groupId

      number optional

      Chrome 88 या इसके बाद का वर्शन

      यह उस ग्रुप का आईडी होता है जिसमें टैब मौजूद हैं. ग्रुप न किए गए टैब के लिए, tabGroups.TAB_GROUP_ID_NONE का इस्तेमाल करें.

    • हाइलाइट की गई

      बूलियन ज़रूरी नहीं है

      टैब हाइलाइट किए गए हैं या नहीं.

    • इंडेक्स

      number optional

      विंडो में टैब की पोज़िशन.

    • lastFocusedWindow

      बूलियन ज़रूरी नहीं है

      टैब, आखिरी बार फ़ोकस की गई विंडो में हैं या नहीं.

    • म्यूट किया गया

      बूलियन ज़रूरी नहीं है

      Chrome 45 या इसके बाद के वर्शन

      टैब म्यूट किए गए हैं या नहीं.

    • पिन की गईं

      बूलियन ज़रूरी नहीं है

      क्या टैब पिन किए गए हैं.

    • splitViewId

      number optional

      Chrome 140+

      यह उस स्प्लिट व्यू का आईडी होता है जिसमें टैब मौजूद हैं. अगर टैब स्प्लिट व्यू में नहीं हैं, तो इसके लिए tabs.SPLIT_VIEW_ID_NONE का इस्तेमाल किया जाता है.

    • स्थिति

      TabStatus ज़रूरी नहीं है

      टैब लोड होने की स्थिति.

    • title

      string ज़रूरी नहीं है

      किसी पैटर्न के हिसाब से पेज के टाइटल मैच करना. अगर एक्सटेंशन के पास "tabs" अनुमति या पेज के लिए होस्ट अनुमतियां नहीं हैं, तो इस प्रॉपर्टी को अनदेखा कर दिया जाता है.

    • url

      string | string[] ज़रूरी नहीं है

      टैब को एक या उससे ज़्यादा यूआरएल पैटर्न से मैच करें. फ़्रैगमेंट आइडेंटिफ़ायर मैच नहीं किए गए हैं. अगर एक्सटेंशन के पास "tabs" अनुमति या पेज के लिए होस्ट अनुमतियां नहीं हैं, तो इस प्रॉपर्टी को अनदेखा कर दिया जाता है.

    • windowId

      number optional

      पैरंट विंडो का आईडी या मौजूदा विंडो के लिए windows.WINDOW_ID_CURRENT.

    • windowType

      WindowType ज़रूरी नहीं है

      टैब किस तरह की विंडो में हैं.

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं

    callback पैरामीटर ऐसा दिखता है:

    (result: Tab[]) => void

    • नतीजा

      Tab[]

रिटर्न

  • Promise<Tab[]>

    Chrome 88 या इसके बाद का वर्शन

    प्रॉमिस सिर्फ़ Manifest V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.

reload()

Promise
chrome.tabs.reload(
  tabId?: number,
  reloadProperties?: object,
  callback?: function,
)
: Promise<void>

किसी टैब को फिर से लोड करें.

पैरामीटर

  • tabId

    number optional

    यह उस टैब का आईडी होता है जिसे फिर से लोड करना है. डिफ़ॉल्ट रूप से, यह मौजूदा विंडो के चुने गए टैब का आईडी होता है.

  • reloadProperties

    ऑब्जेक्ट ज़रूरी नहीं

    • bypassCache

      बूलियन ज़रूरी नहीं है

      लोकल कैश मेमोरी को बायपास करना है या नहीं. डिफ़ॉल्ट रूप से, यह false पर सेट होता है.

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं

    callback पैरामीटर ऐसा दिखता है:

    () => void

रिटर्न

  • Promise<void>

    Chrome 88 या इसके बाद का वर्शन

    प्रॉमिस सिर्फ़ Manifest V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.

remove()

Promise
chrome.tabs.remove(
  tabIds: number | number[],
  callback?: function,
)
: Promise<void>

इससे एक या उससे ज़्यादा टैब बंद हो जाते हैं.

पैरामीटर

  • tabIds

    number | number[]

    बंद किए जाने वाले टैब का आईडी या टैब आईडी की सूची.

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं

    callback पैरामीटर ऐसा दिखता है:

    () => void

रिटर्न

  • Promise<void>

    Chrome 88 या इसके बाद का वर्शन

    प्रॉमिस सिर्फ़ Manifest V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.

removeCSS()

Promise Chrome 87 या इसके बाद के वर्शन &leq; MV2 Chrome 91 के बाद से काम नहीं करता
chrome.tabs.removeCSS(
  tabId?: number,
  details: DeleteInjectionDetails,
  callback?: function,
)
: Promise<void>

Manifest V3 में, इसे scripting.removeCSS से बदल दिया गया है.

यह फ़ंक्शन, पेज से उस सीएसएस को हटाता है जिसे पहले scripting.insertCSS को कॉल करके इंजेक्ट किया गया था.

पैरामीटर

  • tabId

    number optional

    उस टैब का आईडी जिससे सीएसएस को हटाना है. डिफ़ॉल्ट रूप से, यह मौजूदा विंडो का चालू टैब होता है.

  • विवरण

    हटाए जाने वाले सीएसएस टेक्स्ट की जानकारी. कोड या फ़ाइल प्रॉपर्टी में से किसी एक को सेट करना ज़रूरी है. हालांकि, दोनों को एक साथ सेट नहीं किया जा सकता.

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं

    callback पैरामीटर ऐसा दिखता है:

    () => void

रिटर्न

  • Promise<void>

    Chrome 88 या इसके बाद का वर्शन

    यह तब हल होता है, जब सभी सीएसएस हटा दी जाती हैं.

    प्रॉमिस सिर्फ़ Manifest V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.

sendMessage()

Promise
chrome.tabs.sendMessage(
  tabId: number,
  message: any,
  options?: object,
  callback?: function,
)
: Promise<any>

यह फ़ंक्शन, चुने गए टैब में मौजूद कॉन्टेंट स्क्रिप्ट को एक मैसेज भेजता है. runtime.onMessage इवेंट, मौजूदा एक्सटेंशन के लिए तय किए गए टैब में चल रही हर कॉन्टेंट स्क्रिप्ट में ट्रिगर होता है.

पैरामीटर

  • tabId

    संख्या

  • मैसेज

    कोई

    भेजा जाने वाला मैसेज. यह मैसेज, JSON ऑब्जेक्ट होना चाहिए.

  • विकल्प

    ऑब्जेक्ट ज़रूरी नहीं

    • documentId

      string ज़रूरी नहीं है

      Chrome 106 या इसके बाद के वर्शन

      टैब में मौजूद सभी फ़्रेम के बजाय, documentId से पहचाने गए किसी दस्तावेज़ को मैसेज भेजें.

    • frameId

      number optional

      टैब में मौजूद सभी फ़्रेम के बजाय, frameId से पहचाने गए किसी फ़्रेम को मैसेज भेजें.

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं

    Chrome 99 या इसके बाद का वर्शन

    callback पैरामीटर ऐसा दिखता है:

    (response: any) => void

    • जवाब

      कोई

      मैसेज के हैंडलर से भेजा गया JSON रिस्पॉन्स ऑब्जेक्ट.

रिटर्न

  • Promise<any>

    Chrome 99 या इसके बाद का वर्शन

    ऐसा प्रॉमिस जो कॉन्टेंट स्क्रिप्ट से मिले जवाब के साथ रिज़ॉल्व होता है. अगर तय किए गए टैब से कनेक्ट करते समय कोई गड़बड़ी होती है, तो प्रॉमिस को अस्वीकार कर दिया जाएगा.

    प्रॉमिस सिर्फ़ Manifest V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.

sendRequest()

Promise &leq; MV2 Deprecated
chrome.tabs.sendRequest(
  tabId: number,
  request: any,
  callback?: function,
)
: Promise<any>

कृपया runtime.sendMessage का इस्तेमाल करें.

यह फ़ंक्शन, चुने गए टैब में मौजूद कॉन्टेंट स्क्रिप्ट को एक अनुरोध भेजता है. साथ ही, इसमें एक वैकल्पिक कॉलबैक फ़ंक्शन होता है, जिसे जवाब मिलने पर चलाया जाता है. extension.onRequest इवेंट, मौजूदा एक्सटेंशन के लिए तय किए गए टैब में चल रही हर कॉन्टेंट स्क्रिप्ट में ट्रिगर होता है.

पैरामीटर

  • tabId

    संख्या

  • CANNOT TRANSLATE

    कोई

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं

    Chrome 99 या इसके बाद का वर्शन

    callback पैरामीटर ऐसा दिखता है:

    (response: any) => void

    • जवाब

      कोई

      अनुरोध को हैंडल करने वाले व्यक्ति ने JSON रिस्पॉन्स ऑब्जेक्ट भेजा है. अगर तय किए गए टैब से कनेक्ट करते समय कोई गड़बड़ी होती है, तो प्रॉमिस को अस्वीकार कर दिया जाएगा.

रिटर्न

  • Promise<any>

    Chrome 99 या इसके बाद का वर्शन

    प्रॉमिस सिर्फ़ Manifest V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.

setZoom()

Promise
chrome.tabs.setZoom(
  tabId?: number,
  zoomFactor: number,
  callback?: function,
)
: Promise<void>

यह कमांड, चुने गए टैब को ज़ूम करती है.

पैरामीटर

  • tabId

    number optional

    ज़ूम करने के लिए टैब का आईडी; डिफ़ॉल्ट रूप से, यह मौजूदा विंडो के ऐक्टिव टैब पर सेट होता है.

  • zoomFactor

    संख्या

    नया ज़ूम फ़ैक्टर. 0 वैल्यू सेट करने पर, टैब अपने मौजूदा डिफ़ॉल्ट ज़ूम फ़ैक्टर पर सेट हो जाता है. 0 से ज़्यादा वैल्यू का मतलब है कि टैब के लिए ज़ूम फ़ैक्टर (शायद नॉन-डिफ़ॉल्ट) तय किया गया है.

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं

    callback पैरामीटर ऐसा दिखता है:

    () => void

रिटर्न

  • Promise<void>

    Chrome 88 या इसके बाद का वर्शन

    ज़ूम फ़ैक्टर बदलने के बाद, यह समस्या ठीक हो जाती है.

    प्रॉमिस सिर्फ़ Manifest V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.

setZoomSettings()

Promise
chrome.tabs.setZoomSettings(
  tabId?: number,
  zoomSettings: ZoomSettings,
  callback?: function,
)
: Promise<void>

यह कुकी, किसी टैब के लिए ज़ूम सेटिंग सेट करती है. इससे यह तय होता है कि ज़ूम के बदलावों को कैसे मैनेज किया जाए. टैब पर नेविगेट करने पर, ये सेटिंग डिफ़ॉल्ट पर रीसेट हो जाती हैं.

पैरामीटर

  • tabId

    number optional

    ज़ूम सेटिंग बदलने के लिए टैब का आईडी. डिफ़ॉल्ट रूप से, यह मौजूदा विंडो के ऐक्टिव टैब पर सेट होता है.

  • zoomSettings

    इससे यह तय होता है कि ज़ूम के लेवल में होने वाले बदलावों को कैसे हैंडल किया जाता है और किस स्कोप में किया जाता है.

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं

    callback पैरामीटर ऐसा दिखता है:

    () => void

रिटर्न

  • Promise<void>

    Chrome 88 या इसके बाद का वर्शन

    ज़ूम करने की सेटिंग बदलने के बाद ठीक हो जाती है.

    प्रॉमिस सिर्फ़ Manifest V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.

ungroup()

Promise Chrome 88 या इसके बाद के वर्शन
chrome.tabs.ungroup(
  tabIds: number | [number, ...number[]],
  callback?: function,
)
: Promise<void>

इस कुकी का इस्तेमाल, एक या उससे ज़्यादा टैब को उनके ग्रुप से हटाने के लिए किया जाता है. अगर कोई ग्रुप खाली हो जाता है, तो उसे मिटा दिया जाता है.

पैरामीटर

  • tabIds

    number | [number, ...number[]]

    टैब आईडी या उन टैब आईडी की सूची जिन्हें उनके ग्रुप से हटाना है.

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं

    callback पैरामीटर ऐसा दिखता है:

    () => void

रिटर्न

  • Promise<void>

    प्रॉमिस सिर्फ़ Manifest V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.

unsplit()

Promise Chrome 155 या इसके बाद के वर्शन
chrome.tabs.unsplit(
  splitViewId: number,
  callback?: function,
)
: Promise<void>

स्प्लिट व्यू में मौजूद टैब को अलग-अलग टैब में बांटता है.

पैरामीटर

  • splitViewId

    संख्या

    स्प्लिट व्यू को अलग करने का आईडी.

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं

    callback पैरामीटर ऐसा दिखता है:

    () => void

रिटर्न

  • Promise<void>

    प्रॉमिस सिर्फ़ Manifest V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.

update()

Promise
chrome.tabs.update(
  tabId?: number,
  updateProperties: object,
  callback?: function,
)
: Promise<Tab | undefined>

टैब की प्रॉपर्टी में बदलाव करता है. updateProperties में बताई गई प्रॉपर्टी में बदलाव नहीं किया जाता.

पैरामीटर

  • tabId

    number optional

    डिफ़ॉल्ट रूप से, यह मौजूदा विंडो के चुने गए टैब पर सेट होता है.

  • updateProperties

    ऑब्जेक्ट

    • सक्रिय

      बूलियन ज़रूरी नहीं है

      टैब चालू होना चाहिए या नहीं. इससे इस बात पर कोई असर नहीं पड़ता कि विंडो पर फ़ोकस किया गया है या नहीं (windows.update देखें).

    • autoDiscardable

      बूलियन ज़रूरी नहीं है

      Chrome 54 या इसके बाद का वर्शन

      जब संसाधन कम हों, तो क्या ब्राउज़र को टैब अपने-आप बंद कर देना चाहिए.

    • हाइलाइट की गई

      बूलियन ज़रूरी नहीं है

      इससे टैब को मौजूदा चुने गए टैब में जोड़ा या हटाया जाता है.

    • म्यूट किया गया

      बूलियन ज़रूरी नहीं है

      Chrome 45 या इसके बाद के वर्शन

      क्या टैब को म्यूट किया जाना चाहिए.

    • openerTabId

      number optional

      उस टैब का आईडी जिसने इस टैब को खोला है. अगर ऐसा किया जाता है, तो ओपनर टैब उसी विंडो में होना चाहिए जिसमें यह टैब है.

    • पिन की गईं

      बूलियन ज़रूरी नहीं है

      क्या टैब को पिन किया जाना चाहिए.

    • चुना गया

      बूलियन ज़रूरी नहीं है

      अब काम नहीं करता

      कृपया हाइलाइट किए गए टेक्स्ट का इस्तेमाल करें.

      टैब को चुना जाना चाहिए या नहीं.

    • url

      string ज़रूरी नहीं है

      टैब पर जाने के लिए यूआरएल. JavaScript यूआरएल काम नहीं करते. इसके बजाय, scripting.executeScript का इस्तेमाल करें.

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं

    callback पैरामीटर ऐसा दिखता है:

    (tab?: Tab) => void

    • टैब

      टैब ज़रूरी नहीं है

      अपडेट किए गए टैब के बारे में जानकारी. url, pendingUrl, title, और favIconUrl प्रॉपर्टी सिर्फ़ तब tabs.Tab ऑब्जेक्ट में शामिल की जाती हैं, जब एक्सटेंशन के पास "tabs" अनुमति हो या उसके पास पेज के लिए होस्ट अनुमतियां हों.

रिटर्न

  • Promise<Tab | undefined>

    Chrome 88 या इसके बाद का वर्शन

    प्रॉमिस सिर्फ़ Manifest V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.

इवेंट

onActivated

chrome.tabs.onActivated.addListener(
  callback: function,
)

यह इवेंट तब ट्रिगर होता है, जब किसी विंडो में ऐक्टिव टैब बदलता है. ध्यान दें कि इस इवेंट के ट्रिगर होने के समय, टैब का यूआरएल सेट नहीं किया गया हो सकता है. हालांकि, onUpdated इवेंट को सुना जा सकता है, ताकि यूआरएल सेट होने पर आपको सूचना मिल सके.

पैरामीटर

  • कॉलबैक

    फ़ंक्शन

    callback पैरामीटर ऐसा दिखता है:

    (activeInfo: object) => void

    • activeInfo

      ऑब्जेक्ट

      • tabId

        संख्या

        उस टैब का आईडी जो ऐक्टिव हो गया है.

      • windowId

        संख्या

        उस विंडो का आईडी जिसमें ऐक्टिव टैब बदला गया है.

onActiveChanged

&leq; MV2 अब सेवा में नहीं है
chrome.tabs.onActiveChanged.addListener(
  callback: function,
)

कृपया tabs.onActivated का इस्तेमाल करें.

यह इवेंट तब ट्रिगर होता है, जब किसी विंडो में चुना गया टैब बदलता है. ध्यान दें कि इस इवेंट के ट्रिगर होने के समय, टैब का यूआरएल सेट नहीं किया गया हो सकता है. हालांकि, tabs.onUpdated इवेंट सुने जा सकते हैं, ताकि यूआरएल सेट होने पर आपको सूचना मिल सके.

पैरामीटर

  • कॉलबैक

    फ़ंक्शन

    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,
)

यह इवेंट तब ट्रिगर होता है, जब कोई टैब बनाया जाता है. ध्यान दें कि इस इवेंट के ट्रिगर होने के समय, टैब का यूआरएल और टैब ग्रुप की सदस्यता सेट नहीं की जा सकती. हालांकि, onUpdated इवेंट सुने जा सकते हैं, ताकि यूआरएल सेट होने या टैब को किसी टैब ग्रुप में जोड़े जाने पर आपको सूचना मिल सके.

पैरामीटर

  • कॉलबैक

    फ़ंक्शन

    callback पैरामीटर ऐसा दिखता है:

    (tab: Tab) => void

onDetached

chrome.tabs.onDetached.addListener(
  callback: function,
)

जब किसी टैब को विंडो से अलग किया जाता है, तब यह इवेंट ट्रिगर होता है. उदाहरण के लिए, जब उसे एक विंडो से दूसरी विंडो में ले जाया जाता है.

पैरामीटर

  • कॉलबैक

    फ़ंक्शन

    callback पैरामीटर ऐसा दिखता है:

    (tabId: number, detachInfo: object) => void

    • tabId

      संख्या

    • detachInfo

      ऑब्जेक्ट

      • oldPosition

        संख्या

      • oldWindowId

        संख्या

onHighlightChanged

&leq; MV2 अब सेवा में नहीं है
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,
)

यह इवेंट तब ट्रिगर होता है, जब किसी टैब को विंडो में एक जगह से दूसरी जगह ले जाया जाता है. सिर्फ़ एक move इवेंट ट्रिगर होता है. यह उस टैब को दिखाता है जिसे उपयोगकर्ता ने सीधे तौर पर मूव किया है. मैन्युअल तरीके से ले जाए गए टैब के जवाब में, जिन अन्य टैब को ले जाना ज़रूरी है उनके लिए, मूव इवेंट ट्रिगर नहीं होते. जब किसी टैब को एक विंडो से दूसरी विंडो में ले जाया जाता है, तब यह इवेंट ट्रिगर नहीं होता. ज़्यादा जानकारी के लिए, 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

        बूलियन

        जब पैरंट विंडो बंद होने की वजह से टैब बंद हो जाता है, तब यह वैल्यू true होती है.

      • windowId

        संख्या

        वह विंडो जिसका टैब बंद किया गया है.

onReplaced

chrome.tabs.onReplaced.addListener(
  callback: function,
)

यह इवेंट तब ट्रिगर होता है, जब प्रीरेंडरिंग या इंस्टैंट की वजह से किसी टैब को दूसरे टैब से बदल दिया जाता है.

पैरामीटर

  • कॉलबैक

    फ़ंक्शन

    callback पैरामीटर ऐसा दिखता है:

    (addedTabId: number, removedTabId: number) => void

    • addedTabId

      संख्या

    • removedTabId

      संख्या

onSelectionChanged

&leq; MV2 अब सेवा में नहीं है
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

        string ज़रूरी नहीं है

        टैब के नए फ़ेविकॉन का यूआरएल.

      • फ़्रीज़

        बूलियन ज़रूरी नहीं है

        Chrome 132 या इसके बाद के वर्शन

        टैब की नई फ़्रीज़ की गई स्थिति.

      • groupId

        number optional

        Chrome 88 या इसके बाद का वर्शन

        टैब का नया ग्रुप.

      • mutedInfo

        MutedInfo ज़रूरी नहीं

        Chrome 46 या इसके बाद का वर्शन

        टैब के म्यूट होने की नई स्थिति और बदलाव की वजह.

      • पिन की गईं

        बूलियन ज़रूरी नहीं है

        टैब के पिन किए जाने की नई स्थिति.

      • splitViewId

        number optional

        Chrome 140+

        टैब का नया स्प्लिट व्यू.

      • स्थिति

        TabStatus ज़रूरी नहीं है

        टैब के लोड होने की स्थिति.

      • title

        string ज़रूरी नहीं है

        Chrome 48 या इसके बाद का वर्शन

        टैब का नया टाइटल.

      • url

        string ज़रूरी नहीं है

        अगर टैब का यूआरएल बदल गया है, तो नया यूआरएल.

    • टैब

onZoomChange

chrome.tabs.onZoomChange.addListener(
  callback: function,
)

जब किसी टैब को ज़ूम किया जाता है, तब यह इवेंट ट्रिगर होता है.

पैरामीटर

  • कॉलबैक

    फ़ंक्शन

    callback पैरामीटर ऐसा दिखता है:

    (ZoomChangeInfo: object) => void

    • ZoomChangeInfo

      ऑब्जेक्ट

      • newZoomFactor

        संख्या

      • oldZoomFactor

        संख्या

      • tabId

        संख्या

      • zoomSettings