chrome.webNavigation

ब्यौरा

फ़्लाइट में नेविगेशन के अनुरोधों की स्थिति के बारे में सूचनाएं पाने के लिए, chrome.webNavigation एपीआई का इस्तेमाल करें.

अनुमतियां

webNavigation

chrome.webNavigation के सभी तरीकों और इवेंट के लिए, आपको "webNavigation" की अनुमति का एलान करना होगा एक्सटेंशन मेनिफ़ेस्ट में. उदाहरण के लिए:

{
  "name": "My extension",
  ...
  "permissions": [
    "webNavigation"
  ],
  ...
}

सिद्धांत और उनका इस्तेमाल

इवेंट का क्रम

सही तरीके से पूरे होने वाले नेविगेशन के लिए, इवेंट इस क्रम में ट्रिगर होते हैं:

onBeforeNavigate -> onCommitted -> [onDOMContentLoaded] -> onCompleted

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

अगर किसी नेविगेट करने वाले फ़्रेम में सबफ़्रेम हैं, तो उसका onCommitted, उसके किसी भी चाइल्ड फ़्रेम से पहले ट्रिगर होता है onBeforeNavigate; जबकि onCompleted अपने सभी बच्चों के onCompleted के बाद सक्रिय है.

अगर किसी फ़्रेम का रेफ़रंस फ़्रैगमेंट बदला जाता है, तो onReferenceFragmentUpdated इवेंट ट्रिगर होता है. यह इवेंट onDOMContentLoaded के बाद, onCompleted के बाद भी कभी भी सक्रिय हो सकता है.

अगर इतिहास एपीआई का इस्तेमाल फ़्रेम की स्थिति में बदलाव करने के लिए किया जाता है (जैसे, history.pushState() का इस्तेमाल करके, तो onHistoryStateUpdated इवेंट ट्रिगर हुआ. यह इवेंट onDOMContentLoaded के बाद कभी भी सक्रिय हो सकता है.

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

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

webRequest इवेंट से संबंध

webRequest API के इवेंट और webनेविगेशन एपीआई. ऐसा हो सकता है कि पहले से मौजूद फ़्रेम के लिए, webRequest इवेंट अब भी मिल रहे हों कोई नया नेविगेशन शुरू किया हो या कोई नेविगेशन सिर्फ़ तब ही काम करता हो, जब नेटवर्क के संसाधन पहले से ही मौजूद हों पूरी तरह लोड हो जाता है.

आम तौर पर, webनेविगेशन इवेंट, डिसप्ले होने वाले नेविगेशन स्टेटस से काफ़ी मिलते-जुलते होते हैं यूज़र इंटरफ़ेस (यूआई) में है, जबकि webRequest इवेंट, नेटवर्क स्टैक की स्थिति से जुड़े होते हैं आम तौर पर, लोगों को साफ़ तौर पर नहीं दिखता.

टैब आईडी

नेविगेट करने वाले सभी टैब, Chrome के यूज़र इंटरफ़ेस (यूआई) के असली टैब से मेल नहीं खाते. उदाहरण के लिए, एक ऐसा टैब जो पहले से रेंडर किया गया हो. ऐसे टैब टैब API का उपयोग करके ऐक्सेस नहीं किए जा सकते और न ही आप जानकारी का अनुरोध कर सकते हैं webNavigation.getFrame() या webNavigation.getAllFrames() पर कॉल करके, उनके बारे में जानकारी देखें. एक बार इस तरह के टैब को की अदला-बदली की जाती है, तो onTabReplaced इवेंट ट्रिगर होता है और उसे इन एपीआई से ऐक्सेस किया जा सकता है.

टाइमस्टैंप

यह ध्यान देना ज़रूरी है कि अलग-अलग Chrome को हैंडल करने में, कुछ तकनीकी विषमताएं मौजूद होती हैं प्रक्रियाओं के कारण ब्राउज़र और एक्सटेंशन प्रक्रियाओं के बीच घड़ी बदल सकती है. वह इसका मतलब है कि WebNavigation इवेंट timeStamp प्रॉपर्टी की timeStamp प्रॉपर्टी सिर्फ़ गारंटी के साथ होगी ताकि इंटरनल तौर पर एक जैसा बनाया जा सके. एक इवेंट की तुलना दूसरे इवेंट से करने पर आपको सही ऑफ़सेट मिलेगा लेकिन एक्सटेंशन के अंदर मौजूदा समय से उनकी तुलना करते हुए ((new Date()).getTime() का इस्तेमाल करके, उदाहरण के लिए) से उम्मीद से अलग नतीजे मिल सकते हैं.

फ़्रेम आईडी

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

Chrome की एक से ज़्यादा प्रोसेस होने की वजह से, सोर्स को रेंडर करने के लिए कोई टैब अलग-अलग प्रोसेस का इस्तेमाल कर सकता है और डेस्टिनेशन के बारे में ज़्यादा जानें. इसलिए, अगर कोई नेविगेशन किसी नई प्रोसेस में होता है, तो नए नेविगेशन के पूरा होने तक नए और पुराने, दोनों ही पेजों से इवेंट मिलते रहेंगे (यानी कि नए मुख्य फ़्रेम के लिए, onCommitted इवेंट भेजा जाता है). दूसरे शब्दों में, अगर आपको अपने कंप्यूटर पर ज़्यादा काम एक ही frameId वाले webनेविगेशन इवेंट का क्रम तय करें. क्रम ये हो सकते हैं इसे processId बटन से पहचाना जाता है.

यह भी ध्यान रखें कि अस्थायी लोड के दौरान, प्रोसेस को कई बार बदला जा सकता है. ऐसा होता है जब लोड को किसी दूसरी साइट पर रीडायरेक्ट किया जाता है. इस स्थिति में, आपको जब तक आपको फ़ाइनल onCommitted इवेंट नहीं मिल जाता, तब तक onBeforeNavigate और onErrorOccurred इवेंट.

एक्सटेंशन के साथ समस्या पैदा करने वाली एक और अवधारणा है, जिसका लाइफ़साइकल है. फ़्रेम. फ़्रेम एक दस्तावेज़ को होस्ट करता है (जो एक तय यूआरएल से जुड़ा हुआ है). दस्तावेज़ बदल सकता है (जैसे कि नेविगेट करके). हालांकि, frameId नहीं बदल सकता. इसलिए, यह यह संबद्ध करना मुश्किल है कि किसी ख़ास दस्तावेज़ में कुछ हुआ है सिर्फ़ frameIds हैं. हम documentId का कॉन्सेप्ट इस्तेमाल कर रहे हैं जो हर दस्तावेज़ के लिए एक यूनीक आइडेंटिफ़ायर होता है. अगर किसी फ़्रेम पर नेविगेट किया जाता है और नया दस्तावेज़ बनाते समय, आइडेंटिफ़ायर बदल जाएगा. इस फ़ील्ड की मदद से, यह पता लगाया जा सकता है कि जब पेज अपनी लाइफ़साइकल की स्थिति बदलते हैं (प्रीरेंडरिंग/ऐक्टिव/कैश मेमोरी में सेव होने के बीच) क्योंकि यह पहले जैसा ही है.

ट्रांज़िशन टाइप और क्वालीफ़ायर

webNavigation onCommitted इवेंट में एक transitionType और एक transitionQualifiers है प्रॉपर्टी. ट्रांज़िशन का टाइप वही है जो इतिहास एपीआई में इस्तेमाल किया गया है. यह बताता है कि ब्राउज़र ने इस खास यूआरएल पर नेविगेट किया. इसके अलावा, कई ट्रांज़िशन क्वालीफ़ायर इन सुझावों के आधार पर नेविगेशन को बेहतर बनाया जा सकता है.

ट्रांज़िशन के ये क्वालिफ़ायर मौजूद हैं:

ट्रांज़िशन क्वालीफ़ायरब्यौरा
"client_redirect"पेज पर, JavaScript या मेटा रीफ़्रेश टैग की वजह से एक या एक से ज़्यादा रीडायरेक्ट, नेविगेशन के दौरान हुए हैं.
"server_redirect"सर्वर से भेजे गए एचटीटीपी हेडर की वजह से, एक या एक से ज़्यादा रीडायरेक्ट, नेविगेशन के दौरान हुए.
"फ़ॉरवर्ड_बैक"उपयोगकर्ता ने नेविगेशन शुरू करने के लिए, 'आगे जाएं' या 'वापस जाएं' बटन का इस्तेमाल किया.
"from_address_bar"उपयोगकर्ता ने पता बार (यानी खोज वाली जगह) से नेविगेशन शुरू किया.

उदाहरण

इस एपीआई को आज़माने के लिए, chrome-extension-samples से webनेविगेशन एपीआई का उदाहरण इंस्टॉल करें डेटा स्टोर करने की जगह.

टाइप

TransitionQualifier

Chrome 44 और उसके बाद वाले वर्शन के लिए

Enum

"client_redirect"

"server_redirect"

"forward_back"

"from_address_bar"

TransitionType

Chrome 44 और उसके बाद वाले वर्शन के लिए

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

Enum

"लिंक"

"typed"

"auto_bookmark"

"auto_subframe"

"मैन्युअल_सबफ़्रेम"

"जनरेट किया गया"

"start_page"

"form_submit"

"फिर से लोड करें"

"कीवर्ड"

"keyword_generate"

तरीके

getAllFrames()

प्रॉमिस
chrome.webNavigation.getAllFrames(
  details: object,
  callback?: function,
)

दिए गए टैब के सभी फ़्रेम के बारे में जानकारी हासिल करता है.

पैरामीटर

  • विवरण

    ऑब्जेक्ट

    उस टैब के बारे में जानकारी जिससे सभी फ़्रेम वापस लाए जाते हैं.

    • tabId

      संख्या

      टैब का आईडी.

  • कॉलबैक

    फ़ंक्शन वैकल्पिक

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

    (details?: object[]) => void

    • विवरण

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

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

      • documentId

        स्ट्रिंग

        Chrome 106 और उसके बाद वाले वर्शन

        दस्तावेज़ का यूयूआईडी लोड हो गया.

      • documentLifecycle
        Chrome 106 और उसके बाद वाले वर्शन

        वह लाइफ़साइकल जिसमें दस्तावेज़ मौजूद है.

      • errorOccurred

        बूलियन

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

      • frameId

        संख्या

        फ़्रेम का आईडी. 0 से पता चलता है कि यह मुख्य फ़्रेम है; पॉज़िटिव वैल्यू किसी सबफ़्रेम के आईडी को दिखाती है.

      • frameType
        Chrome 106 और उसके बाद वाले वर्शन

        उस फ़्रेम का टाइप जिसमें नेविगेशन हुआ था.

      • parentDocumentId

        स्ट्रिंग ज़रूरी नहीं

        Chrome 106 और उसके बाद वाले वर्शन

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

      • parentFrameId

        संख्या

        पैरंट फ़्रेम का आईडी या अगर यह मुख्य फ़्रेम है, तो -1.

      • processId

        संख्या

        उस प्रोसेस का आईडी जो इस फ़्रेम के लिए रेंडरर को चलाता है.

      • url

        स्ट्रिंग

        इस फ़्रेम से जुड़ा मौजूदा यूआरएल.

रिटर्न

  • Promise<object[] | तय नहीं है>

    Chrome 93 और उसके बाद के वर्शन

    मेनिफ़ेस्ट V3 और उसके बाद के वर्शन में प्रॉमिस काम करते हैं. हालांकि, कॉलबैक की सुविधा इन मामलों में दी जाती है पुराने सिस्टम के साथ काम करने की सुविधा. एक ही फ़ंक्शन कॉल में दोनों का इस्तेमाल नहीं किया जा सकता. कॉन्टेंट बनाने प्रॉमिस उसी टाइप के साथ ठीक होता है जिसे कॉलबैक में पास किया जाता है.

getFrame()

प्रॉमिस
chrome.webNavigation.getFrame(
  details: object,
  callback?: function,
)

दिए गए फ़्रेम के बारे में जानकारी हासिल करता है. फ़्रेम <iframe> का मतलब है या <frame> वेब पेज के एक हिस्से से दूसरे हिस्से में होता है और इसकी पहचान टैब आईडी और फ़्रेम आईडी से की जाती है.

पैरामीटर

  • विवरण

    ऑब्जेक्ट

    उस फ़्रेम के बारे में जानकारी जिसके बारे में जानकारी हासिल करनी है.

    • documentId

      स्ट्रिंग ज़रूरी नहीं

      Chrome 106 और उसके बाद वाले वर्शन

      दस्तावेज़ का यूयूआईडी. अगर FrameId और/या tabId दिए गए हैं, तो उनकी पुष्टि की जाएगी कि वे दिए गए दस्तावेज़ के आईडी से मेल खाते हों.

    • frameId

      नंबर वैकल्पिक

      दिए गए टैब में फ़्रेम का आईडी.

    • processId

      नंबर वैकल्पिक

      Chrome 49 के बाद से अब तक काम नहीं करता

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

      उस प्रोसेस का आईडी जो इस टैब के लिए रेंडरर चलाता है.

    • tabId

      नंबर वैकल्पिक

      उस टैब का आईडी जिसमें फ़्रेम है.

  • कॉलबैक

    फ़ंक्शन वैकल्पिक

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

    (details?: object) => void

    • विवरण

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

      अनुरोध किए गए फ़्रेम के बारे में जानकारी, अगर बताया गया फ़्रेम आईडी और/या टैब आईडी अमान्य है, तो इसकी जानकारी शून्य हो जाती है.

      • documentId

        स्ट्रिंग

        Chrome 106 और उसके बाद वाले वर्शन

        दस्तावेज़ का यूयूआईडी लोड हो गया.

      • documentLifecycle
        Chrome 106 और उसके बाद वाले वर्शन

        वह लाइफ़साइकल जिसमें दस्तावेज़ मौजूद है.

      • errorOccurred

        बूलियन

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

      • frameType
        Chrome 106 और उसके बाद वाले वर्शन

        उस फ़्रेम का टाइप जिसमें नेविगेशन हुआ था.

      • parentDocumentId

        स्ट्रिंग ज़रूरी नहीं

        Chrome 106 और उसके बाद वाले वर्शन

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

      • parentFrameId

        संख्या

        पैरंट फ़्रेम का आईडी या अगर यह मुख्य फ़्रेम है, तो -1.

      • url

        स्ट्रिंग

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

रिटर्न

  • Promise&lt;object | तय नहीं है>

    Chrome 93 और उसके बाद के वर्शन

    मेनिफ़ेस्ट V3 और उसके बाद के वर्शन में प्रॉमिस काम करते हैं. हालांकि, कॉलबैक की सुविधा इन मामलों में दी जाती है पुराने सिस्टम के साथ काम करने की सुविधा. एक ही फ़ंक्शन कॉल में दोनों का इस्तेमाल नहीं किया जा सकता. कॉन्टेंट बनाने प्रॉमिस उसी टाइप के साथ ठीक होता है जिसे कॉलबैक में पास किया जाता है.

इवेंट

onBeforeNavigate

chrome.webNavigation.onBeforeNavigate.addListener(
  callback: function,
  filters?: object,
)

नेविगेशन के करीब होने पर सक्रिय होता है.

पैरामीटर

  • कॉलबैक

    फ़ंक्शन

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

    (details: object) => void

    • विवरण

      ऑब्जेक्ट

      • Chrome 106 और उसके बाद वाले वर्शन

        वह लाइफ़साइकल जिसमें दस्तावेज़ मौजूद है.

      • frameId

        संख्या

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

      • Chrome 106 और उसके बाद वाले वर्शन

        उस फ़्रेम का टाइप जिसमें नेविगेशन हुआ था.

      • parentDocumentId

        स्ट्रिंग ज़रूरी नहीं

        Chrome 106 और उसके बाद वाले वर्शन

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

      • parentFrameId

        संख्या

        पैरंट फ़्रेम का आईडी या अगर यह मुख्य फ़्रेम है, तो -1.

      • processId

        संख्या

        Chrome 50 के बाद से अब तक काम नहीं करता

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

        -1 की वैल्यू.

      • tabId

        संख्या

        उस टैब का आईडी, जिसमें नेविगेशन होने वाला है.

      • timeStamp

        संख्या

        Epoch के बाद से मिलीसेकंड में, वह समय जब ब्राउज़र नेविगेशन शुरू करने वाला था.

      • url

        स्ट्रिंग

  • फ़िल्टर

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

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

onCommitted

chrome.webNavigation.onCommitted.addListener(
  callback: function,
  filters?: object,
)

यह नेविगेशन तब ट्रिगर होता है, जब यह काम करता है. दस्तावेज़ (और इसके बारे में बताने वाले संसाधन, जैसे कि इमेज और सबफ़्रेम) अब भी डाउनलोड हो रहा होगा, लेकिन दस्तावेज़ का कम से कम एक हिस्सा सर्वर से मिला है और ब्राउज़र ने नए दस्तावेज़ पर स्विच करने का फ़ैसला किया है.

पैरामीटर

  • कॉलबैक

    फ़ंक्शन

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

    (details: object) => void

    • विवरण

      ऑब्जेक्ट

      • documentId

        स्ट्रिंग

        Chrome 106 और उसके बाद वाले वर्शन

        दस्तावेज़ का यूयूआईडी लोड हो गया.

      • Chrome 106 और उसके बाद वाले वर्शन

        वह लाइफ़साइकल जिसमें दस्तावेज़ मौजूद है.

      • frameId

        संख्या

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

      • Chrome 106 और उसके बाद वाले वर्शन

        उस फ़्रेम का टाइप जिसमें नेविगेशन हुआ था.

      • parentDocumentId

        स्ट्रिंग ज़रूरी नहीं

        Chrome 106 और उसके बाद वाले वर्शन

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

      • parentFrameId

        संख्या

        Chrome 74 और उसके बाद के वर्शन

        पैरंट फ़्रेम का आईडी या अगर यह मुख्य फ़्रेम है, तो -1.

      • processId

        संख्या

        उस प्रोसेस का आईडी जो इस फ़्रेम के लिए रेंडरर को चलाता है.

      • tabId

        संख्या

        उस टैब का आईडी, जिसमें नेविगेशन होता है.

      • timeStamp

        संख्या

        Epoch के बाद से, मिलीसेकंड में वह समय जब नेविगेशन का तय किया गया था.

      • transitionQualifiers

        ट्रांज़िशन क्वालीफ़ायर की सूची.

      • transitionType

        नेविगेशन की वजह.

      • url

        स्ट्रिंग

  • फ़िल्टर

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

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

onCompleted

chrome.webNavigation.onCompleted.addListener(
  callback: function,
  filters?: object,
)

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

पैरामीटर

  • कॉलबैक

    फ़ंक्शन

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

    (details: object) => void

    • विवरण

      ऑब्जेक्ट

      • documentId

        स्ट्रिंग

        Chrome 106 और उसके बाद वाले वर्शन

        दस्तावेज़ का यूयूआईडी लोड हो गया.

      • Chrome 106 और उसके बाद वाले वर्शन

        वह लाइफ़साइकल जिसमें दस्तावेज़ मौजूद है.

      • frameId

        संख्या

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

      • Chrome 106 और उसके बाद वाले वर्शन

        उस फ़्रेम का टाइप जिसमें नेविगेशन हुआ था.

      • parentDocumentId

        स्ट्रिंग ज़रूरी नहीं

        Chrome 106 और उसके बाद वाले वर्शन

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

      • parentFrameId

        संख्या

        Chrome 74 और उसके बाद वाले वर्शन के लिए

        पैरंट फ़्रेम का आईडी या अगर यह मुख्य फ़्रेम है, तो -1.

      • processId

        संख्या

        उस प्रोसेस का आईडी जो इस फ़्रेम के लिए रेंडरर को चलाता है.

      • tabId

        संख्या

        उस टैब का आईडी, जिसमें नेविगेशन होता है.

      • timeStamp

        संख्या

        Epoch के बाद से मिलीसेकंड में, दस्तावेज़ के लोड होने का समय.

      • url

        स्ट्रिंग

  • फ़िल्टर

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

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

onCreatedNavigationTarget

chrome.webNavigation.onCreatedNavigationTarget.addListener(
  callback: function,
  filters?: object,
)

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

पैरामीटर

  • कॉलबैक

    फ़ंक्शन

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

    (details: object) => void

    • विवरण

      ऑब्जेक्ट

      • sourceFrameId

        संख्या

        sourceTabId वाले फ़्रेम का आईडी, जिसमें नेविगेशन ट्रिगर होता है. 0 से मुख्य फ़्रेम का पता चलता है.

      • sourceProcessId

        संख्या

        उस प्रोसेस का आईडी जो सोर्स फ़्रेम के लिए रेंडरर को चलाता है.

      • sourceTabId

        संख्या

        उस टैब का आईडी, जिसमें नेविगेशन ट्रिगर हुआ है.

      • tabId

        संख्या

        उस टैब का आईडी जिसमें यूआरएल खोला गया है

      • timeStamp

        संख्या

        Epoch के बाद से मिलीसेकंड में, वह समय जब ब्राउज़र एक नया व्यू बनाने वाला था.

      • url

        स्ट्रिंग

        नई विंडो में खोला जाने वाला यूआरएल.

  • फ़िल्टर

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

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

onDOMContentLoaded

chrome.webNavigation.onDOMContentLoaded.addListener(
  callback: function,
  filters?: object,
)

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

पैरामीटर

  • कॉलबैक

    फ़ंक्शन

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

    (details: object) => void

    • विवरण

      ऑब्जेक्ट

      • documentId

        स्ट्रिंग

        Chrome 106 और उसके बाद वाले वर्शन

        दस्तावेज़ का यूयूआईडी लोड हो गया.

      • Chrome 106 और उसके बाद वाले वर्शन

        वह लाइफ़साइकल जिसमें दस्तावेज़ मौजूद है.

      • frameId

        संख्या

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

      • Chrome 106 और उसके बाद वाले वर्शन

        उस फ़्रेम का टाइप जिसमें नेविगेशन हुआ था.

      • parentDocumentId

        स्ट्रिंग ज़रूरी नहीं

        Chrome 106 और उसके बाद वाले वर्शन

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

      • parentFrameId

        संख्या

        Chrome 74 और उसके बाद के वर्शन

        पैरंट फ़्रेम का आईडी या अगर यह मुख्य फ़्रेम है, तो -1.

      • processId

        संख्या

        उस प्रोसेस का आईडी जो इस फ़्रेम के लिए रेंडरर को चलाता है.

      • tabId

        संख्या

        उस टैब का आईडी, जिसमें नेविगेशन होता है.

      • timeStamp

        संख्या

        Epoch के बाद के मिलीसेकंड में, वह समय जब पेज का DOM पूरी तरह से बनाया गया था.

      • url

        स्ट्रिंग

  • फ़िल्टर

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

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

onErrorOccurred

chrome.webNavigation.onErrorOccurred.addListener(
  callback: function,
  filters?: object,
)

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

पैरामीटर

  • कॉलबैक

    फ़ंक्शन

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

    (details: object) => void

    • विवरण

      ऑब्जेक्ट

      • documentId

        स्ट्रिंग

        Chrome 106 और उसके बाद वाले वर्शन

        दस्तावेज़ का यूयूआईडी लोड हो गया.

      • Chrome 106 और उसके बाद वाले वर्शन

        वह लाइफ़साइकल जिसमें दस्तावेज़ मौजूद है.

      • गड़बड़ी

        स्ट्रिंग

        गड़बड़ी की जानकारी.

      • frameId

        संख्या

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

      • Chrome 106 और उसके बाद वाले वर्शन

        उस फ़्रेम का टाइप जिसमें नेविगेशन हुआ था.

      • parentDocumentId

        स्ट्रिंग ज़रूरी नहीं

        Chrome 106 और उसके बाद वाले वर्शन

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

      • parentFrameId

        संख्या

        Chrome 74 और उसके बाद के वर्शन

        पैरंट फ़्रेम का आईडी या अगर यह मुख्य फ़्रेम है, तो -1.

      • processId

        संख्या

        Chrome 50 के बाद से अब तक काम नहीं करता

        इस इवेंट के लिए campaignId को सेट नहीं किया गया है.

        -1 की वैल्यू.

      • tabId

        संख्या

        उस टैब का आईडी, जिसमें नेविगेशन होता है.

      • timeStamp

        संख्या

        Epoch के बाद से मिलीसेकंड में, गड़बड़ी होने का समय.

      • url

        स्ट्रिंग

  • फ़िल्टर

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

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

onHistoryStateUpdated

chrome.webNavigation.onHistoryStateUpdated.addListener(
  callback: function,
  filters?: object,
)

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

पैरामीटर

  • कॉलबैक

    फ़ंक्शन

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

    (details: object) => void

    • विवरण

      ऑब्जेक्ट

      • documentId

        स्ट्रिंग

        Chrome 106 और उसके बाद वाले वर्शन

        दस्तावेज़ का यूयूआईडी लोड हो गया.

      • Chrome 106 और उसके बाद वाले वर्शन

        वह लाइफ़साइकल जिसमें दस्तावेज़ मौजूद है.

      • frameId

        संख्या

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

      • Chrome 106 और उसके बाद वाले वर्शन

        उस फ़्रेम का टाइप जिसमें नेविगेशन हुआ था.

      • parentDocumentId

        स्ट्रिंग ज़रूरी नहीं

        Chrome 106 और उसके बाद वाले वर्शन

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

      • parentFrameId

        संख्या

        Chrome 74 और उसके बाद वाले वर्शन के लिए

        पैरंट फ़्रेम का आईडी या अगर यह मुख्य फ़्रेम है, तो -1.

      • processId

        संख्या

        उस प्रोसेस का आईडी जो इस फ़्रेम के लिए रेंडरर को चलाता है.

      • tabId

        संख्या

        उस टैब का आईडी, जिसमें नेविगेशन होता है.

      • timeStamp

        संख्या

        Epoch के बाद से, मिलीसेकंड में वह समय जब नेविगेशन का तय किया गया था.

      • transitionQualifiers

        ट्रांज़िशन क्वालीफ़ायर की सूची.

      • transitionType

        नेविगेशन की वजह.

      • url

        स्ट्रिंग

  • फ़िल्टर

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

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

onReferenceFragmentUpdated

chrome.webNavigation.onReferenceFragmentUpdated.addListener(
  callback: function,
  filters?: object,
)

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

पैरामीटर

  • कॉलबैक

    फ़ंक्शन

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

    (details: object) => void

    • विवरण

      ऑब्जेक्ट

      • documentId

        स्ट्रिंग

        Chrome 106 और उसके बाद वाले वर्शन

        दस्तावेज़ का यूयूआईडी लोड हो गया.

      • Chrome 106 और उसके बाद वाले वर्शन

        वह लाइफ़साइकल जिसमें दस्तावेज़ मौजूद है.

      • frameId

        संख्या

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

      • Chrome 106 और उसके बाद वाले वर्शन

        उस फ़्रेम का टाइप जिसमें नेविगेशन हुआ था.

      • parentDocumentId

        स्ट्रिंग ज़रूरी नहीं

        Chrome 106 और उसके बाद वाले वर्शन

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

      • parentFrameId

        संख्या

        Chrome 74 और उसके बाद के वर्शन

        पैरंट फ़्रेम का आईडी या अगर यह मुख्य फ़्रेम है, तो -1.

      • processId

        संख्या

        उस प्रोसेस का आईडी जो इस फ़्रेम के लिए रेंडरर को चलाता है.

      • tabId

        संख्या

        उस टैब का आईडी, जिसमें नेविगेशन होता है.

      • timeStamp

        संख्या

        Epoch के बाद से, मिलीसेकंड में वह समय जब नेविगेशन का तय किया गया था.

      • transitionQualifiers

        ट्रांज़िशन क्वालीफ़ायर की सूची.

      • transitionType

        नेविगेशन की वजह.

      • url

        स्ट्रिंग

  • फ़िल्टर

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

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

onTabReplaced

chrome.webNavigation.onTabReplaced.addListener(
  callback: function,
)

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

पैरामीटर

  • कॉलबैक

    फ़ंक्शन

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

    (details: object) => void

    • विवरण

      ऑब्जेक्ट

      • replacedTabId

        संख्या

        बदले गए टैब का आईडी.

      • tabId

        संख्या

        पुराने टैब की जगह लेने वाले टैब का आईडी.

      • timeStamp

        संख्या

        Epoch के बाद से मिलीसेकंड में वह समय जब बदलाव हुआ था.