chrome.tabs

refresh date: 2026-09-25 robots: noindex

ब्यौरा

ब्राउज़र के टैब सिस्टम से इंटरैक्ट करने के लिए, 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 ज़रूरी नहीं

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

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

    बूलियन

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

  • reason

    MutedInfoReason ज़रूरी नहीं

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

MutedInfoReason

Chrome 46+

ऐसा इवेंट जिसकी वजह से म्यूट की गई स्थिति में बदलाव हुआ.

Enum

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

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

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

Tab

प्रॉपर्टी

  • सक्रिय

    बूलियन

    क्या टैब अपनी विंडो में चालू है. ज़रूरी नहीं है कि विंडो फ़ोकस में हो.

  • Audible

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

    Chrome 45+

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

  • autoDiscardable

    बूलियन

    Chrome 54+

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

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

    बूलियन

    Chrome 54+

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

  • favIconUrl

    string ज़रूरी नहीं

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

  • फ़्रीज़

    बूलियन

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

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

  • groupId

    संख्या

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

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

  • ऊंचाई

    number ज़रूरी नहीं

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

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

    बूलियन

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

  • आईडी

    number ज़रूरी नहीं

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

  • गुप्त मोड

    बूलियन

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

  • इंडेक्स

    संख्या

    विंडो में टैब का ज़ीरो-बेस्ड इंडेक्स.

  • lastAccessed

    संख्या

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

    Epoch के बाद से मिलीसेकंड की संख्या के तौर पर, टैब अपनी विंडो में पिछली बार कब ऐक्टिव हुआ था.

  • mutedInfo

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

    Chrome 46+

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

  • openerTabId

    number ज़रूरी नहीं

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

  • pendingUrl

    string ज़रूरी नहीं

    Chrome 79+

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

  • पिन की गईं

    बूलियन

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

  • चुना गया

    बूलियन

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

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

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

  • sessionId

    string ज़रूरी नहीं

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

  • splitViewId

    number ज़रूरी नहीं

    Chrome 140+

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

  • स्थिति

    TabStatus ज़रूरी नहीं

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

  • title

    string ज़रूरी नहीं

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

  • url

    string ज़रूरी नहीं

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

  • चौड़ाई

    number ज़रूरी नहीं

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

  • windowId

    संख्या

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

TabStatus

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

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

Enum

"unloaded"

"loading"

"complete"

WindowType

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

विंडो किस तरह की है.

Enum

"normal"

"popup"

"panel"

"ऐप्लिकेशन"

"devtools"

ZoomSettings

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

प्रॉपर्टी

  • defaultZoomFactor

    number ज़रूरी नहीं

    Chrome 43+

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

  • मोड

    ZoomSettingsMode ज़रूरी नहीं

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

  • दायरा

    ZoomSettingsScope ज़रूरी नहीं

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

ZoomSettingsMode

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

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

Enum

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

"manual"
ज़ूम में होने वाले बदलावों को अपने-आप मैनेज करने की सुविधा को बदल देता है. 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 या इसके बाद का वर्शन

एक इंडेक्स, जो टैब बार में टैब इंडेक्स की अनुपस्थिति को दिखाता है.

वैल्यू

-1

तरीके

captureVisibleTab()

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

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

पैरामीटर

  • windowId

    number ज़रूरी नहीं

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

  • विकल्प

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

  • कॉलबैक

    function ज़रूरी नहीं

    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

    object ज़रूरी नहीं

    • documentId

      string ज़रूरी नहीं

      Chrome 106+

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

    • frameId

      number ज़रूरी नहीं

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

    • नाम

      string ज़रूरी नहीं

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

रिटर्न

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

create()

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

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

पैरामीटर

  • createProperties

    ऑब्जेक्ट

    • सक्रिय

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

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

    • इंडेक्स

      number ज़रूरी नहीं

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

    • openerTabId

      number ज़रूरी नहीं

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

    • पिन की गईं

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

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

    • चुना गया

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

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

      कृपया ऐक्टिव का इस्तेमाल करें.

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

    • splitWithTabId

      number ज़रूरी नहीं

      Chrome 155+

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

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

      string ज़रूरी नहीं

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

    • windowId

      number ज़रूरी नहीं

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

  • कॉलबैक

    function ज़रूरी नहीं

    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 स्थितियां एक जैसी होनी चाहिए.

  • कॉलबैक

    function ज़रूरी नहीं

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

    (splitViewId: number) => void

    • splitViewId

      संख्या

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

रिटर्न

  • Promise<number>

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

detectLanguage()

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

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

पैरामीटर

  • tabId

    number ज़रूरी नहीं

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

  • कॉलबैक

    function ज़रूरी नहीं

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

    (language: string) => void

    • भाषा

      स्ट्रिंग

      ISO भाषा कोड, जैसे कि en या fr. इस तरीके के साथ काम करने वाली भाषाओं की पूरी सूची देखने के लिए, kLanguageInfoTable देखें. दूसरे से चौथे कॉलम की जांच की जाती है और शून्य के अलावा पहली वैल्यू दिखाई जाती है. हालांकि, Simplified Chinese के लिए 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 ज़रूरी नहीं

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

  • कॉलबैक

    function ज़रूरी नहीं

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

    (tab?: Tab) => void

    • टैब

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

      अगर टैब को खारिज कर दिया गया है, तो खारिज किया गया टैब; अगर ऐसा नहीं है, तो undefined.

रिटर्न

  • Promise<Tab | undefined>

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

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

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

duplicate()

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

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

पैरामीटर

  • tabId

    संख्या

    डुप्लीकेट किए जाने वाले टैब का आईडी.

  • कॉलबैक

    function ज़रूरी नहीं

    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 ज़रूरी नहीं

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

  • विवरण

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

  • कॉलबैक

    function ज़रूरी नहीं

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

    (result?: any[]) => void

    • नतीजा

      any[] ज़रूरी नहीं

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

रिटर्न

  • वादा<कोई[] | अपरिभाषित>

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

    यह सभी JavaScript के लागू होने के बाद रिज़ॉल्व होता है.

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

get()

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

इससे किसी टैब के बारे में जानकारी मिलती है.

पैरामीटर

  • tabId

    संख्या

  • कॉलबैक

    function ज़रूरी नहीं

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

    (tab: Tab) => void

    • टैब

रिटर्न

  • Promise<Tab>

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

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

getAllInWindow()

Promise &leq; MV2 अब काम नहीं करता
chrome.tabs.getAllInWindow(
  windowId?: number,
  callback?: function,
)
: Promise<Tab[]>

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

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

पैरामीटर

  • windowId

    number ज़रूरी नहीं

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

  • कॉलबैक

    function ज़रूरी नहीं

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

    (tabs: Tab[]) => void

    • टैब

      Tab[]

रिटर्न

  • Promise<Tab[]>

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

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

getCurrent()

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

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

पैरामीटर

  • कॉलबैक

    function ज़रूरी नहीं

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

    (tab?: Tab) => void

    • टैब

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

रिटर्न

  • Promise<Tab | undefined>

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

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

getSelected()

Promise &leq; MV2 अब काम नहीं करता
chrome.tabs.getSelected(
  windowId?: number,
  callback?: function,
)
: Promise<Tab>

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

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

पैरामीटर

  • windowId

    number ज़रूरी नहीं

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

  • कॉलबैक

    function ज़रूरी नहीं

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

    (tab: Tab) => void

    • टैब

रिटर्न

  • Promise<Tab>

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

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

getZoom()

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

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

पैरामीटर

  • tabId

    number ज़रूरी नहीं

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

  • कॉलबैक

    function ज़रूरी नहीं

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

    (zoomFactor: number) => void

    • zoomFactor

      संख्या

      टैब का मौजूदा ज़ूम फ़ैक्टर.

रिटर्न

  • Promise<number>

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

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

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

getZoomSettings()

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

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

पैरामीटर

  • tabId

    number ज़रूरी नहीं

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

  • कॉलबैक

    function ज़रूरी नहीं

    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 ज़रूरी नहीं

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

  • कॉलबैक

    function ज़रूरी नहीं

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

    () => void

रिटर्न

  • वादा<शून्य>

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

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

goForward()

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

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

पैरामीटर

  • tabId

    number ज़रूरी नहीं

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

  • कॉलबैक

    function ज़रूरी नहीं

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

    () => void

रिटर्न

  • वादा<शून्य>

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

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

group()

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

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

पैरामीटर

  • विकल्प

    ऑब्जेक्ट

    • createProperties

      object ज़रूरी नहीं

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

      • windowId

        number ज़रूरी नहीं

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

    • groupId

      number ज़रूरी नहीं

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

    • tabIds

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

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

  • कॉलबैक

    function ज़रूरी नहीं

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

    (groupId: number) => void

    • groupId

      संख्या

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

रिटर्न

  • Promise<number>

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

highlight()

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

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

पैरामीटर

  • highlightInfo

    ऑब्जेक्ट

    • टैब

      number | number[]

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

    • windowId

      number ज़रूरी नहीं

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

  • कॉलबैक

    function ज़रूरी नहीं

    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 ज़रूरी नहीं

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

  • विवरण

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

  • कॉलबैक

    function ज़रूरी नहीं

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

    () => void

रिटर्न

  • वादा<शून्य>

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

    सभी सीएसएस शामिल होने के बाद, यह प्रॉमिस रिज़ॉल्व हो जाता है.

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

move()

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

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

पैरामीटर

  • tabIds

    number | number[]

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

  • moveProperties

    ऑब्जेक्ट

    • इंडेक्स

      संख्या

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

    • windowId

      number ज़रूरी नहीं

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

  • कॉलबैक

    function ज़रूरी नहीं

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

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

    • टैब

      Tab | Tab[]

      मूव किए गए टैब के बारे में जानकारी.

रिटर्न

  • Promise<Tab | Tab[]>

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

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

query()

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

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

पैरामीटर

  • queryInfo

    ऑब्जेक्ट

    • सक्रिय

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

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

    • Audible

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

      Chrome 45+

      क्या टैब में ऑडियो चल रहा है.

    • autoDiscardable

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

      Chrome 54+

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

    • currentWindow

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

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

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

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

      Chrome 54+

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

    • फ़्रीज़

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

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

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

    • groupId

      number ज़रूरी नहीं

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

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

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

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

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

    • इंडेक्स

      number ज़रूरी नहीं

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

    • lastFocusedWindow

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

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

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

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

      Chrome 45+

      टैब म्यूट हैं या नहीं.

    • पिन की गईं

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

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

    • splitViewId

      number ज़रूरी नहीं

      Chrome 140+

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

    • स्थिति

      TabStatus ज़रूरी नहीं

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

    • title

      string ज़रूरी नहीं

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

    • url

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

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

    • windowId

      number ज़रूरी नहीं

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

    • windowType

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

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

  • कॉलबैक

    function ज़रूरी नहीं

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

    (result: Tab[]) => void

    • नतीजा

      Tab[]

रिटर्न

  • Promise<Tab[]>

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

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

reload()

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

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

पैरामीटर

  • tabId

    number ज़रूरी नहीं

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

  • reloadProperties

    object ज़रूरी नहीं

    • bypassCache

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

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

  • कॉलबैक

    function ज़रूरी नहीं

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

    () => void

रिटर्न

  • वादा<शून्य>

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

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

remove()

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

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

पैरामीटर

  • tabIds

    number | number[]

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

  • कॉलबैक

    function ज़रूरी नहीं

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

    () => 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 ज़रूरी नहीं

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

  • विवरण

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

  • कॉलबैक

    function ज़रूरी नहीं

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

    () => void

रिटर्न

  • वादा<शून्य>

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

    यह तब रिज़ॉल्व होता है, जब सारा सीएसएस हटा दिया जाता है.

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

sendMessage()

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

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

पैरामीटर

  • tabId

    संख्या

  • मैसेज

    कोई

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

  • विकल्प

    object ज़रूरी नहीं

    • documentId

      string ज़रूरी नहीं

      Chrome 106+

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

    • frameId

      number ज़रूरी नहीं

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

  • कॉलबैक

    function ज़रूरी नहीं

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

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

    (response: any) => void

    • जवाब

      कोई

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

रिटर्न

  • <any> प्रॉमिस

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

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

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

sendRequest()

Promise &leq; MV2 अब काम नहीं करता
chrome.tabs.sendRequest(
  tabId: number,
  request: any,
  callback?: function,
)
: Promise<any>

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

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

पैरामीटर

  • tabId

    संख्या

  • CANNOT TRANSLATE

    कोई

  • कॉलबैक

    function ज़रूरी नहीं

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

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

    (response: any) => void

    • जवाब

      कोई

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

रिटर्न

  • <any> प्रॉमिस

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

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

setZoom()

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

यह किसी टैब को ज़ूम करता है.

पैरामीटर

  • tabId

    number ज़रूरी नहीं

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

  • zoomFactor

    संख्या

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

  • कॉलबैक

    function ज़रूरी नहीं

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

    () => void

रिटर्न

  • वादा<शून्य>

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

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

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

setZoomSettings()

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

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

पैरामीटर

  • tabId

    number ज़रूरी नहीं

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

  • zoomSettings

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

  • कॉलबैक

    function ज़रूरी नहीं

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

    () => void

रिटर्न

  • वादा<शून्य>

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

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

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

ungroup()

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

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

पैरामीटर

  • tabIds

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

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

  • कॉलबैक

    function ज़रूरी नहीं

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

    () => void

रिटर्न

  • वादा<शून्य>

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

unsplit()

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

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

पैरामीटर

  • splitViewId

    संख्या

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

  • कॉलबैक

    function ज़रूरी नहीं

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

    () => void

रिटर्न

  • वादा<शून्य>

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

update()

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

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

पैरामीटर

  • tabId

    number ज़रूरी नहीं

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

  • updateProperties

    ऑब्जेक्ट

    • सक्रिय

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

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

    • autoDiscardable

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

      Chrome 54+

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

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

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

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

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

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

      Chrome 45+

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

    • openerTabId

      number ज़रूरी नहीं

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

    • पिन की गईं

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

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

    • चुना गया

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

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

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

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

    • url

      string ज़रूरी नहीं

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

  • कॉलबैक

    function ज़रूरी नहीं

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

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

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

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

      • mutedInfo

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

        Chrome 46+

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

      • पिन की गईं

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

        टैब को पिन करने की नई स्थिति.

      • splitViewId

        number ज़रूरी नहीं

        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