refresh date: 2026-09-25 robots: noindex
ब्यौरा
ब्राउज़र विंडो के साथ इंटरैक्ट करने के लिए, chrome.windows एपीआई का इस्तेमाल करें. इस एपीआई का इस्तेमाल करके, ब्राउज़र में विंडो बनाई जा सकती हैं, उनमें बदलाव किया जा सकता है, और उन्हें फिर से व्यवस्थित किया जा सकता है.
मेनिफ़ेस्ट
अनुरोध करने पर, windows.Window में tabs.Tab ऑब्जेक्ट का ऐरे होता है. अगर आपको tabs.Tab की url, pendingUrl, title या favIconUrl प्रॉपर्टी का ऐक्सेस चाहिए, तो आपको अपने मेनिफ़ेस्ट में "tabs" अनुमति का एलान करना होगा. उदाहरण के लिए:
{
"name": "My extension",
...
"permissions": ["tabs"],
...
}
मौजूदा विंडो
एक्सटेंशन सिस्टम में कई फ़ंक्शन, windowId आर्ग्युमेंट लेते हैं. यह आर्ग्युमेंट ज़रूरी नहीं होता. इसकी डिफ़ॉल्ट वैल्यू, मौजूदा विंडो होती है.
मौजूदा विंडो वह विंडो होती है जिसमें फ़िलहाल चल रहा कोड होता है. यह ध्यान रखना ज़रूरी है कि यह सबसे ऊपर या फ़ोकस की गई विंडो से अलग हो सकती है.
उदाहरण के लिए, मान लें कि कोई एक्सटेंशन एक ही एचटीएमएल फ़ाइल से कुछ टैब या विंडो बनाता है. साथ ही, उस एचटीएमएल फ़ाइल में tabs.query() को कॉल किया जाता है. मौजूदा विंडो वह विंडो होती है जिसमें कॉल करने वाला पेज मौजूद होता है. इससे कोई फ़र्क़ नहीं पड़ता कि सबसे ऊपर वाली विंडो कौनसी है.
सर्विस वर्कर के मामले में, मौजूदा विंडो की वैल्यू पिछली ऐक्टिव विंडो पर वापस आ जाती है. कुछ मामलों में, बैकग्राउंड पेजों के लिए कोई मौजूदा विंडो नहीं हो सकती.
उदाहरण

इस एपीआई को आज़माने के लिए, chrome-extension-samples रिपॉज़िटरी से windows API example इंस्टॉल करें.
टाइप
CreateType
इससे पता चलता है कि किस तरह की ब्राउज़र विंडो बनानी है. 'पैनल' अब काम नहीं करता है. यह सिर्फ़ Chrome OS पर, अनुमति वाली सूची में शामिल मौजूदा एक्सटेंशन के लिए उपलब्ध है.
Enum
"normal"
इससे विंडो को स्टैंडर्ड विंडो के तौर पर सेट किया जाता है.
"popup"
इस विकल्प का इस्तेमाल करके, विंडो को पॉपअप विंडो के तौर पर सेट किया जाता है.
"panel"
विंडो को पैनल के तौर पर सेट करता है.
QueryOptions
प्रॉपर्टी
-
अपने-आप जानकारी भर जाना
boolean ज़रूरी नहीं है
अगर यह वैल्यू सही है, तो
windows.Windowऑब्जेक्ट मेंtabsप्रॉपर्टी होती है. इसमेंtabs.Tabऑब्जेक्ट की सूची होती है.Tabऑब्जेक्ट में सिर्फ़url,pendingUrl,title, औरfavIconUrlप्रॉपर्टी शामिल होती हैं. ऐसा तब होता है, जब एक्सटेंशन की मेनिफ़ेस्ट फ़ाइल में"tabs"अनुमति शामिल हो. -
windowTypes
WindowType[] optional
अगर यह सेट है, तो
windows.Windowको उसके टाइप के आधार पर फ़िल्टर किया जाता है. अगर यह नीति सेट नहीं की गई है, तो डिफ़ॉल्ट फ़िल्टर['normal', 'popup']पर सेट होता है.
Window
प्रॉपर्टी
-
alwaysOnTop
बूलियन
इससे पता चलता है कि विंडो को हमेशा सबसे ऊपर दिखने के लिए सेट किया गया है या नहीं.
-
फ़ोकस किया गया
बूलियन
क्या फ़िलहाल विंडो फ़ोकस में है.
-
ऊंचाई
number optional
पिक्सल में विंडो की ऊंचाई. इसमें फ़्रेम भी शामिल है. कुछ मामलों में, किसी विंडो को
heightप्रॉपर्टी असाइन नहीं की जा सकती. उदाहरण के लिए,sessionsएपीआई से बंद की गई विंडो के बारे में क्वेरी करते समय. -
आईडी
number optional
विंडो का आईडी. ब्राउज़र सेशन में विंडो आईडी यूनीक होते हैं. कुछ मामलों में, किसी विंडो को
IDप्रॉपर्टी असाइन नहीं की जा सकती. उदाहरण के लिए,sessionsएपीआई का इस्तेमाल करके विंडो क्वेरी करते समय. ऐसे मामले में, सेशन आईडी मौजूद हो सकता है. -
गुप्त
बूलियन
विंडो गुप्त है या नहीं.
-
बाएं
number optional
स्क्रीन के बाईं ओर से विंडो का ऑफ़सेट, पिक्सल में. कुछ मामलों में, किसी विंडो को
leftप्रॉपर्टी असाइन नहीं की जा सकती. उदाहरण के लिए,sessionsएपीआई से बंद की गई विंडो के बारे में क्वेरी करते समय. -
sessionId
string ज़रूरी नहीं है
इस सेशन आईडी का इस्तेमाल, किसी विंडो की खास पहचान करने के लिए किया जाता है. यह
sessionsएपीआई से मिलता है. -
राज्य
WindowState optional
इस ब्राउज़र विंडो की स्थिति.
-
टैब
Tab[] ज़रूरी नहीं है
विंडो में मौजूद मौजूदा टैब के बारे में बताने वाले
tabs.Tabऑब्जेक्ट का ऐरे. -
ऊपर
number optional
स्क्रीन के सबसे ऊपर वाले किनारे से विंडो का ऑफ़सेट, पिक्सल में. कुछ मामलों में, किसी विंडो को
topप्रॉपर्टी असाइन नहीं की जा सकती. उदाहरण के लिए,sessionsएपीआई से बंद की गई विंडो के बारे में क्वेरी करते समय. -
टाइप
WindowType ज़रूरी नहीं है
यह किस तरह की ब्राउज़र विंडो है.
-
चौड़ाई
number optional
फ़्रेम के साथ-साथ विंडो की चौड़ाई, पिक्सल में. कुछ मामलों में, किसी विंडो को
widthप्रॉपर्टी असाइन नहीं की जा सकती. उदाहरण के लिए,sessionsएपीआई से बंद की गई विंडो के बारे में क्वेरी करते समय.
WindowState
इस ब्राउज़र विंडो की स्थिति. कुछ मामलों में, किसी विंडो को state प्रॉपर्टी असाइन नहीं की जा सकती. उदाहरण के लिए, sessions एपीआई से बंद की गई विंडो के बारे में क्वेरी करते समय.
Enum
"normal"
विंडो की सामान्य स्थिति (न तो छोटी की गई हो, न बड़ी की गई हो, और न ही फ़ुलस्क्रीन पर हो).
"minimized"
विंडो को छोटा किया गया है.
"maximized"
विंडो की स्थिति को ज़्यादा से ज़्यादा किया गया है.
"fullscreen"
फ़ुलस्क्रीन विंडो की स्थिति.
WindowType
यह ब्राउज़र विंडो का टाइप है. कुछ मामलों में, विंडो को type प्रॉपर्टी असाइन नहीं की जा सकती. उदाहरण के लिए, sessions API से बंद की गई विंडो के बारे में क्वेरी करते समय.
Enum
"normal"
यह ब्राउज़र की सामान्य विंडो होती है.
"popup"
यह ब्राउज़र का पॉप-अप होता है.
"panel"
इस एपीआई में अब इस्तेमाल नहीं किया जाता. Chrome ऐप्लिकेशन की पैनल स्टाइल वाली विंडो. एक्सटेंशन सिर्फ़ अपनी पैनल विंडो देख सकते हैं.
"app"
इस एपीआई में अब इस्तेमाल नहीं किया जाता. Chrome ऐप्लिकेशन की विंडो. एक्सटेंशन सिर्फ़ अपने ऐप्लिकेशन की विंडो देख सकते हैं.
"devtools"
डेवलपर टूल विंडो.
प्रॉपर्टी
WINDOW_ID_CURRENT
windowId वैल्यू, मौजूदा विंडो को दिखाती है.
वैल्यू
-2
WINDOW_ID_NONE
windowId की वह वैल्यू जो Chrome ब्राउज़र विंडो के न होने की जानकारी देती है.
वैल्यू
-1
तरीके
create()
chrome.windows.create(
createData?: object,
callback?: function,
): Promise<Window | undefined>
यह फ़ंक्शन, ब्राउज़र की नई विंडो बनाता है (खोलता है). इसमें साइज़, पोज़िशन या डिफ़ॉल्ट यूआरएल के बारे में जानकारी दी जा सकती है.
पैरामीटर
-
createData
ऑब्जेक्ट ज़रूरी नहीं
-
फ़ोकस किया गया
boolean ज़रूरी नहीं है
अगर
true, तो कोई ऐक्टिव विंडो खुलती है. अगरfalse, तो इससे इनऐक्टिव विंडो खुलती है. -
ऊंचाई
number optional
फ़्रेम के साथ नई विंडो की ऊंचाई, पिक्सल में. अगर इसकी वैल्यू नहीं दी जाती है, तो डिफ़ॉल्ट रूप से सामान्य ऊंचाई सेट होती है.
-
गुप्त
boolean ज़रूरी नहीं है
क्या नई विंडो को गुप्त विंडो के तौर पर खोलना है.
-
बाएं
number optional
स्क्रीन के बाएं किनारे से नई विंडो को पोज़िशन करने के लिए पिक्सल की संख्या. अगर कोई वैल्यू तय नहीं की गई है, तो नई विंडो को पिछली फ़ोकस की गई विंडो से स्वाभाविक रूप से ऑफ़सेट किया जाता है. पैनल के लिए, इस वैल्यू को अनदेखा कर दिया जाता है.
-
setSelfAsOpener
boolean ज़रूरी नहीं है
Chrome 64 या इसके बाद का वर्शनअगर
true, तो नई विंडो के 'window.opener' को कॉलर पर सेट किया जाता है. साथ ही, यह कॉलर के साथ एक ही यूनिट ऑफ़ रिलेटेड ब्राउज़िंग कॉन्टेक्स्ट में होता है. -
राज्य
WindowState ज़रूरी नहीं है
Chrome 44 या इसके बाद का वर्शनविंडो की शुरुआती स्थिति.
minimized,maximized, औरfullscreenकोleft,top,widthयाheightके साथ नहीं जोड़ा जा सकता. -
tabId
number optional
नई विंडो में जोड़ने के लिए टैब का आईडी.
-
ऊपर
number optional
स्क्रीन के सबसे ऊपर वाले किनारे से नई विंडो को पोज़िशन करने के लिए पिक्सल की संख्या. अगर कोई वैल्यू तय नहीं की गई है, तो नई विंडो को पिछली फ़ोकस की गई विंडो से स्वाभाविक रूप से ऑफ़सेट किया जाता है. पैनल के लिए, इस वैल्यू को अनदेखा कर दिया जाता है.
-
टाइप
CreateType optional
इससे पता चलता है कि किस तरह की ब्राउज़र विंडो बनानी है.
-
url
string | string[] ज़रूरी नहीं है
विंडो में टैब के तौर पर खोलने के लिए यूआरएल या यूआरएल का अरे. पूरी तरह से क्वालिफ़ाइड यूआरएल में स्कीम शामिल होनी चाहिए. जैसे, 'http://www.google.com', न कि 'www.google.com'. पूरी तरह से मान्य नहीं होने वाले यूआरएल को एक्सटेंशन में रिलेटिव माना जाता है. यह डिफ़ॉल्ट रूप से, 'नया टैब' पेज पर सेट होता है.
-
चौड़ाई
number optional
फ़्रेम के साथ-साथ नई विंडो की चौड़ाई (पिक्सल में). अगर चौड़ाई तय नहीं की गई है, तो डिफ़ॉल्ट रूप से नैचुरल चौड़ाई का इस्तेमाल किया जाता है.
-
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं है
callbackपैरामीटर ऐसा दिखता है:(window?: Window) => void
-
विंडो
Window ज़रूरी नहीं है
इस कुकी में बनाई गई विंडो के बारे में जानकारी होती है.
-
रिटर्न
-
Promise<Window | undefined>
Chrome 88 या इसके बाद का वर्शनप्रॉमिस सिर्फ़ Manifest V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.
get()
chrome.windows.get(
windowId: number,
queryOptions?: QueryOptions,
callback?: function,
): Promise<Window>
इससे किसी विंडो के बारे में जानकारी मिलती है.
पैरामीटर
-
windowId
संख्या
-
queryOptions
QueryOptions ज़रूरी नहीं है
Chrome 88 या इसके बाद का वर्शन -
कॉलबैक
फ़ंक्शन ज़रूरी नहीं है
callbackपैरामीटर ऐसा दिखता है:(window: Window) => void
-
विंडो
-
रिटर्न
-
Promise<Window>
Chrome 88 या इसके बाद का वर्शनप्रॉमिस सिर्फ़ Manifest V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.
getAll()
chrome.windows.getAll(
queryOptions?: QueryOptions,
callback?: function,
): Promise<Window[]>
इससे सभी विंडो मिलती हैं.
पैरामीटर
-
queryOptions
QueryOptions ज़रूरी नहीं है
Chrome 88 या इसके बाद का वर्शन -
कॉलबैक
फ़ंक्शन ज़रूरी नहीं है
callbackपैरामीटर ऐसा दिखता है:(windows: Window[]) => void
-
विंडो
Window[]
-
रिटर्न
-
Promise<Window[]>
Chrome 88 या इसके बाद का वर्शनप्रॉमिस सिर्फ़ Manifest V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.
getCurrent()
chrome.windows.getCurrent(
queryOptions?: QueryOptions,
callback?: function,
): Promise<Window>
मौजूदा विंडो को ऐक्सेस करता है.
पैरामीटर
-
queryOptions
QueryOptions ज़रूरी नहीं है
Chrome 88 या इसके बाद का वर्शन -
कॉलबैक
फ़ंक्शन ज़रूरी नहीं है
callbackपैरामीटर ऐसा दिखता है:(window: Window) => void
-
विंडो
-
रिटर्न
-
Promise<Window>
Chrome 88 या इसके बाद का वर्शनप्रॉमिस सिर्फ़ Manifest V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.
getLastFocused()
chrome.windows.getLastFocused(
queryOptions?: QueryOptions,
callback?: function,
): Promise<Window>
यह कुकी, उस विंडो को दिखाती है जिस पर हाल ही में फ़ोकस किया गया था. आम तौर पर, यह 'सबसे ऊपर' वाली विंडो होती है.
पैरामीटर
-
queryOptions
QueryOptions ज़रूरी नहीं है
Chrome 88 या इसके बाद का वर्शन -
कॉलबैक
फ़ंक्शन ज़रूरी नहीं है
callbackपैरामीटर ऐसा दिखता है:(window: Window) => void
-
विंडो
-
रिटर्न
-
Promise<Window>
Chrome 88 या इसके बाद का वर्शनप्रॉमिस सिर्फ़ Manifest V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.
remove()
chrome.windows.remove(
windowId: number,
callback?: function,
): Promise<void>
इससे विंडो और उसमें मौजूद सभी टैब हट जाते हैं (बंद हो जाते हैं).
पैरामीटर
-
windowId
संख्या
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं है
callbackपैरामीटर ऐसा दिखता है:() => void
रिटर्न
-
Promise<void>
Chrome 88 या इसके बाद का वर्शनप्रॉमिस सिर्फ़ Manifest V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.
update()
chrome.windows.update(
windowId: number,
updateInfo: object,
callback?: function,
): Promise<Window>
यह कुकी, विंडो की प्रॉपर्टी अपडेट करती है. सिर्फ़ उन प्रॉपर्टी की वैल्यू तय करें जिनमें बदलाव करना है. जिन प्रॉपर्टी की वैल्यू तय नहीं की गई है उनमें कोई बदलाव नहीं होगा.
पैरामीटर
-
windowId
संख्या
-
updateInfo
ऑब्जेक्ट
-
drawAttention
boolean ज़रूरी नहीं है
अगर
trueहै, तो विंडो को इस तरह से दिखाया जाता है कि उपयोगकर्ता का ध्यान उस पर जाए. हालांकि, फ़ोकस की गई विंडो में कोई बदलाव नहीं होता. यह इफ़ेक्ट तब तक दिखता है, जब तक उपयोगकर्ता विंडो पर फ़ोकस नहीं करता. अगर विंडो पहले से ही फ़ोकस में है, तो इस विकल्प का कोई असर नहीं पड़ता. पिछलाdrawAttentionअनुरोध रद्द करने के लिए, इसेfalseपर सेट करें. -
फ़ोकस किया गया
boolean ज़रूरी नहीं है
अगर
true, तो विंडो को सबसे ऊपर ले आता है; इसे 'छोटा किया गया' स्थिति के साथ नहीं जोड़ा जा सकता. अगरfalse, तो z-ऑर्डर में अगली विंडो को सबसे ऊपर ले जाता है; इसे 'फ़ुलस्क्रीन' या 'ज़्यादा से ज़्यादा' स्थिति के साथ नहीं जोड़ा जा सकता. -
ऊंचाई
number optional
पिक्सल में, विंडो का साइज़ बदलने के लिए लंबाई. पैनल के लिए, इस वैल्यू को अनदेखा कर दिया जाता है.
-
बाएं
number optional
स्क्रीन के बाएं किनारे से विंडो को पिक्सल में ले जाने का ऑफ़सेट. पैनल के लिए, इस वैल्यू को अनदेखा कर दिया जाता है.
-
राज्य
WindowState ज़रूरी नहीं है
विंडो की नई स्थिति. 'minimized', 'maximized', और 'fullscreen' स्थितियों को 'left', 'top', 'width' या 'height' के साथ नहीं जोड़ा जा सकता.
-
ऊपर
number optional
स्क्रीन के सबसे ऊपर वाले किनारे से विंडो को पिक्सल में ले जाने का ऑफ़सेट. पैनल के लिए, इस वैल्यू को अनदेखा कर दिया जाता है.
-
चौड़ाई
number optional
पिक्सल में, विंडो का साइज़ बदलने के लिए चौड़ाई. पैनल के लिए, इस वैल्यू को अनदेखा कर दिया जाता है.
-
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं है
callbackपैरामीटर ऐसा दिखता है:(window: Window) => void
-
विंडो
-
रिटर्न
-
Promise<Window>
Chrome 88 या इसके बाद का वर्शनप्रॉमिस सिर्फ़ Manifest V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.
इवेंट
onBoundsChanged
chrome.windows.onBoundsChanged.addListener(
callback: function,
)
जब किसी विंडो का साइज़ बदला जाता है, तब यह इवेंट ट्रिगर होता है. यह इवेंट सिर्फ़ तब भेजा जाता है, जब नए डाइमेंशन लागू हो जाते हैं. यह बदलाव के दौरान नहीं भेजा जाता.
onCreated
chrome.windows.onCreated.addListener(
callback: function,
filters?: object,
)
जब कोई विंडो बनाई जाती है, तब यह इवेंट ट्रिगर होता है.
पैरामीटर
-
कॉलबैक
फ़ंक्शन
Chrome 46 या इसके बाद का वर्शनcallbackपैरामीटर ऐसा दिखता है:(window: Window) => void
-
विंडो
बनाई गई विंडो की जानकारी.
-
-
फ़िल्टर
ऑब्जेक्ट ज़रूरी नहीं
-
windowTypes
ऐसी शर्तें जिन्हें विंडो के बनाए जा रहे टाइप को पूरा करना होगा. डिफ़ॉल्ट रूप से, यह
['normal', 'popup']को पूरा करता है.
-
onFocusChanged
chrome.windows.onFocusChanged.addListener(
callback: function,
filters?: object,
)
जब फ़ोकस की गई मौजूदा विंडो बदलती है, तब यह इवेंट ट्रिगर होता है. अगर सभी Chrome विंडो पर फ़ोकस नहीं है, तो chrome.windows.WINDOW_ID_NONE दिखाता है. ध्यान दें: कुछ Linux विंडो मैनेजर पर, एक Chrome विंडो से दूसरी Chrome विंडो पर स्विच करने से पहले, WINDOW_ID_NONE हमेशा तुरंत भेजा जाता है.
पैरामीटर
-
कॉलबैक
फ़ंक्शन
Chrome 46 या इसके बाद का वर्शनcallbackपैरामीटर ऐसा दिखता है:(windowId: number) => void
-
windowId
संख्या
फ़ोकस की गई नई विंडो का आईडी.
-
-
फ़िल्टर
ऑब्जेक्ट ज़रूरी नहीं
-
windowTypes
ऐसी शर्तें जिन्हें हटाए जा रहे विंडो टाइप को पूरा करना होगा. डिफ़ॉल्ट रूप से, यह
['normal', 'popup']को पूरा करता है.
-
onRemoved
chrome.windows.onRemoved.addListener(
callback: function,
filters?: object,
)
जब कोई विंडो हटा दी जाती है (बंद कर दी जाती है), तब यह इवेंट ट्रिगर होता है.
पैरामीटर
-
कॉलबैक
फ़ंक्शन
Chrome 46 या इसके बाद का वर्शनcallbackपैरामीटर ऐसा दिखता है:(windowId: number) => void
-
windowId
संख्या
हटाए गए विंडो का आईडी.
-
-
फ़िल्टर
ऑब्जेक्ट ज़रूरी नहीं
-
windowTypes
ऐसी शर्तें जिन्हें हटाए जा रहे विंडो टाइप को पूरा करना होगा. डिफ़ॉल्ट रूप से, यह
['normal', 'popup']की शर्त पूरी करता है.
-