chrome.webNavigation

الوصف

استخدِم chrome.webNavigation API لتلقّي إشعارات حول حالة طلبات التنقّل أثناء الطيران.

الأذونات

webNavigation

في جميع طُرق وأحداث "chrome.webNavigation"، يجب تقديم بيان لإذن ""webNavigation"". في بيان الإضافة. مثلاً:

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

المفاهيم والاستخدام

ترتيب الحدث

بالنسبة إلى عملية تنقّل مكتملة بنجاح، يتم تنشيط الأحداث بالترتيب التالي:

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

ينتج عن أي خطأ يحدث أثناء العملية حدث onErrorOccurred. للحصول على التنقل، ليس هناك أي أحداث أخرى تم تنشيطها بعد onErrorOccurred.

إذا كان إطار التنقل يحتوي على إطارات فرعية، يتم تنشيط onCommitted قبل أي من الإطارات الفرعية. onBeforeNavigate؛ بينما يتم تنشيط onCompleted بعد كل قيمة onCompleted الثانوية الخاصة بها.

وفي حال تغيير جزء المرجع من إطار، يتم تنشيط حدث onReferenceFragmentUpdated. هذا النمط يمكن أن يتم تنشيط الحدث في أي وقت بعد onDOMContentLoaded، حتى بعد onCompleted.

إذا تم استخدام History API لتعديل حالة إطار (على سبيل المثال، باستخدام history.pushState()، تم تنشيط حدث onHistoryStateUpdated. يمكن تنشيط هذا الحدث في أي وقت بعد onDOMContentLoaded.

إذا استعادت إحدى عمليات التنقّل إحدى الصفحات من التخزين المؤقت للصفحات، سينطبق الحدث onDOMContentLoaded. لن تشتعل. لا يتم تنشيط الحدث لأنّه قد اكتمل تحميل المحتوى عندما تكون الصفحة قد انتهت. قد تمت زيارته لأول مرة.

إذا تم تشغيل عملية تنقل باستخدام البحث الفوري في Chrome أو الصفحات الفورية، فسيتم تحميل يتم تبديل الصفحة إلى علامة التبويب الحالية. وفي هذه الحالة، يتم تنشيط حدث onTabReplaced.

علاقة بأحداث webRequest

ليس هناك ترتيب محدد بين أحداث webRequest API وأحداث واجهة برمجة التطبيقات webnavigation API. من الممكن أن يستمر تلقّي أحداث webRequest للإطارات التي سبق أن بدأت عملية تنقل جديدة، أو أن عملية التنقل لا تستمر إلا بعد تهيئة موارد الشبكة بكامل طاقته.

وبشكل عام، ترتبط أحداث webالتنقل ارتباطًا وثيقًا بحالة التنقل التي يتم عرضها. في واجهة المستخدم، بينما تتجاوب أحداث webRequest مع حالة مكدس الشبكة الذي غير واضحة للمستخدم بشكل عام.

أرقام تعريف علامات التبويب

لا تتطابق جميع علامات تبويب التنقل مع علامات التبويب الفعلية في واجهة المستخدم في Chrome، مثل علامة التبويب التي مسبقًا. لا يمكن الوصول إلى علامات التبويب هذه باستخدام tabs API ولا يمكنك طلب معلومات بشأنهما من خلال الاتصال بـ webNavigation.getFrame() أو webNavigation.getAllFrames(). وبمجرد أن تعرض علامة التبويب ويتم تبديلها، ويتم تنشيط حدث onTabReplaced ويمكن الوصول إليها من خلال واجهات برمجة التطبيقات هذه.

الطوابع الزمنية

من المهم ملاحظة أن بعض المراوغة الفنية في تعامل نظام التشغيل مع متصفح Chrome من العمليات التي يمكن أن تتسبب في ميل الساعة بين المتصفح نفسه وعمليات الإضافات. الذي يعني أنّ السمة timeStamp في السمة timeStamp الخاصة بالحدث WebNavigation مضمونة فقط متناسقة داخليًا ستمنحك مقارنة حدث بحدث آخر الإزاحة الصحيحة. بينهما، ولكن مقارنتهما بالوقت الحالي داخل الإضافة (باستخدام (new Date()).getTime()، على سبيل المثال) قد ينتج عنها نتائج غير متوقعة.

أرقام تعريف الإطارات

يمكن تحديد الإطارات داخل علامة تبويب من خلال رقم تعريف إطار. معرّف الإطار للإطار الرئيسي دائمًا هو 0، معرف الإطارات الفرعية هو عدد موجب. بعد إنشاء مستند في إطار، يتم استخدام معرّف الإطار ثابتًا طوال مدة بقاء الوثيقة. وبدءًا من Chrome 49، يكون هذا المعرف ثابتًا أيضًا مدة عمر الإطار (عبر عمليات التنقل المتعددة).

بسبب طبيعة المعالجة المتعددة في Chrome، قد تستخدم علامة تبويب عمليات مختلفة لعرض المصدر ووجهة صفحة الويب. وبالتالي، في حالة حدوث تنقل في عملية جديدة، يمكنك تلقي الأحداث من الصفحة الجديدة والقديمة إلى أن يتم الالتزام بالتنقل الجديد (أي تم إرسال حدث onCommitted للإطار الرئيسي الجديد). بعبارة أخرى، من الممكن أن يكون لديك المزيد أكثر من تسلسل واحد في انتظار المراجعة لأحداث web Navigation (التنقّل عبر الويب) باستخدام frameId نفسه. يمكن أن تكون التسلسلات يمكن تمييزها بالمفتاح processId.

يُرجى العِلم أيضًا أنّه أثناء التحميل المؤقت، قد يتم تبديل العملية عدة مرات. يحدث هذا عندما تتم إعادة توجيه التحميل إلى موقع مختلف. في هذه الحالة، سوف تتلقى إعلانات متكررة onBeforeNavigate وonErrorOccurred حدث إلى حين تلقّي آخر حدث onCommitted.

هناك مفهوم آخر يتسبب في حدوث مشاكل في الإضافات وهو دورة حياة الإطار. يستضيف إطار المستند مستندًا (مرتبطًا بعنوان URL ملتزم). يمكن أن يتغير المستند (مثلاً من خلال التنقل)، بينما لا يتغير frameId، وبالتالي يصعب إقران شيء ما حدث في مستند معين به frameIds فقط. نحن بصدد تقديم مفهوم documentId وهو معرّف فريد لكل مستند إذا تم التنقل داخل إطار وفتح مستند جديد سيتغير المعرف. هذا الحقل مفيد لتحديد عندما تغيّر الصفحات حالة دورة حياتها (بين العرض المسبق/النشطة/المخزنة مؤقتًا) لأنه يظل كما هو.

أنواع الانتقالات والمؤهلات

حدث onCommitted في webNavigation يتضمّن transitionType وtransitionQualifiers الموقع. نوع النقل هو نفسه المستخدم في history API الذي يصف كيفية المتصفح المستخدم إلى عنوان URL المحدد هذا. بالإضافة إلى ذلك، يمكن إجراء عدة مؤهلات انتقالية يتم إرجاعها تحدد التنقل بشكل أكبر.

تتوفّر مؤهلات الانتقال التالية:

مؤهِّل الانتقالالوصف
"client_redirect" (إعادة_التوجيه_من_العميل)تمت عملية إعادة توجيه واحدة أو أكثر ناتجة عن علامات JavaScript أو علامات إعادة تحميل البيانات الوصفية على الصفحة أثناء التنقّل.
"server_redirect"تمت عملية إعادة توجيه واحدة أو أكثر ناتجة عن عناوين HTTP المُرسَلة من الخادم أثناء التنقّل.
"forward_back"استخدم المستخدم زر "الأمام" أو "رجوع" لبدء التنقل.
"from_address_bar"بدأ المستخدم التنقّل من شريط العناوين (المعروف أيضًا باسم "المربّع المتعدد الاستخدامات").

أمثلة

لتجربة واجهة برمجة التطبيقات هذه، يمكنك تثبيت مثال على واجهة برمجة تطبيقات web Navigation من chrome-extension-samples المستودع.

الأنواع

TransitionQualifier

الإصدار 44 من Chrome أو الإصدارات الأحدث

Enum

"client_redirect"

"server_redirect"

"forward_back"

"from_address_bar"

TransitionType

الإصدار 44 من Chrome أو الإصدارات الأحدث

سبب التنقّل. يتم استخدام أنواع الانتقال نفسها كما هو محدّد في History API. هذه هي أنواع الانتقال نفسها كما هو موضح في history API باستثناء "start_page" بدلاً من "auto_toplevel" (للتوافق مع الأنظمة القديمة).

Enum

"الرابط"

"typed"

"auto_bookmark"

"auto_subframe"

"manual_subframe"

"تم الإنشاء"

"start_page"

"form_submit"

"إعادة التحميل"

"الكلمة الرئيسية"

"keyword_generate"

الطُرق

getAllFrames()

وعود
chrome.webNavigation.getAllFrames(
  details: object,
  callback?: function,
)

لاسترداد معلومات حول جميع الإطارات في علامة تبويب معينة.

المعلمات

  • التفاصيل

    كائن

    معلومات حول علامة التبويب لاسترداد جميع الإطارات منه.

    • tabId

      الرقم

      رقم تعريف علامة التبويب.

  • رد الاتصال

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    (details?: object[]) => void

    • التفاصيل

      object[] اختياري

      قائمة الإطارات في علامة التبويب المحددة تكون فارغة إذا كان رقم التعريف المحدد لعلامة التبويب غير صالح.

      • documentId

        سلسلة

        الإصدار 106 من Chrome أو الإصدارات الأحدث

        معرّف فريد عالمي للمستند الذي تم تحميله

      • documentLifecycle
        الإصدار 106 من Chrome أو الإصدارات الأحدث

        دورة الحياة التي يكون فيها المستند

      • errorOccurred

        منطقي

        صحيح إذا تمت مقاطعة آخر عملية تنقُّل في هذا الإطار بسبب خطأ، أي تم تنشيط حدث onErrorOccurred.

      • frameId

        الرقم

        رقم تعريف الإطار 0 يشير إلى أن هذا هو الإطار الرئيسي؛ تشير القيمة الموجبة إلى معرف إطار فرعي.

      • frameType
        الإصدار 106 من Chrome أو الإصدارات الأحدث

        نوع الإطار الذي حدث فيه التنقل.

      • parentDocumentId

        سلسلة اختيارية

        الإصدار 106 من Chrome أو الإصدارات الأحدث

        معرّف فريد عالمي للمستند الرئيسي الذي يملك هذا الإطار. ولا يتم ضبط ذلك إذا لم يكن هناك عنصر رئيسي.

      • parentFrameId

        الرقم

        رقم تعريف الإطار الرئيسي، أو -1 إذا كان هذا هو الإطار الرئيسي.

      • processId

        الرقم

        رقم تعريف العملية التي تشغّل العارض لهذا الإطار.

      • url

        سلسلة

        عنوان URL المرتبط حاليًا بهذا الإطار.

المرتجعات

  • Promise<object[] | غير محددة>

    الإصدار 93 من Chrome أو الإصدارات الأحدث

    تتوفّر الوعود في الإصدار Manifest V3 والإصدارات الأحدث، ولكن يتم توفير معاودة الاتصال. التوافق مع الأنظمة القديمة. لا يمكنك استخدام كلتيهما في نفس استدعاء الدالة. تشير رسالة الأشكال البيانية يتم حل الوعد بنفس النوع الذي يتم إرساله إلى معاودة الاتصال.

getFrame()

وعود
chrome.webNavigation.getFrame(
  details: object,
  callback?: function,
)

لاسترداد معلومات حول الإطار المحدد. يشير الإطار إلى <iframe> أو <frame> لصفحة ويب ويتم تحديدها بواسطة معرف علامة التبويب ومعرف الإطار.

المعلمات

  • التفاصيل

    كائن

    تمثّل هذه السمة معلومات حول الإطار المطلوب استرداد معلومات عنه.

    • documentId

      سلسلة اختيارية

      الإصدار 106 من Chrome أو الإصدارات الأحدث

      تمثّل هذه السمة المعرّف الفريد العالمي للمستند. إذا تم تقديم رقم تعريف الإطار و/أو رقم التعريف TabId، سيتم التأكّد من تطابقهما مع المستند الذي تم العثور عليه من خلال رقم تعريف المستند المقدَّم.

    • frameId

      الرقم اختياري

      رقم تعريف الإطار في علامة التبويب المحدّدة

    • processId

      الرقم اختياري

      متوقف منذ الإصدار 49 من Chrome

      يتم الآن تحديد الإطارات بشكل فريد عن طريق معرّف علامة التبويب ومعرّف الإطار؛ لم تعد هناك حاجة إلى معرف العملية وبالتالي سيتم تجاهلها.

      رقم تعريف العملية التي تشغّل العارض لعلامة التبويب هذه.

    • tabId

      الرقم اختياري

      رقم تعريف علامة التبويب التي يظهر فيها الإطار.

  • رد الاتصال

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    (details?: object) => void

    • التفاصيل

      الكائن اختياري

      معلومات عن الإطار المطلوب، قيمة فارغة إذا كان رقم تعريف الإطار و/أو رقم تعريف علامة التبويب غير صالحَين.

      • documentId

        سلسلة

        الإصدار 106 من Chrome أو الإصدارات الأحدث

        معرّف فريد عالمي للمستند الذي تم تحميله

      • documentLifecycle
        الإصدار 106 من Chrome أو الإصدارات الأحدث

        دورة الحياة التي يكون فيها المستند

      • errorOccurred

        منطقي

        صحيح إذا تمت مقاطعة آخر عملية تنقُّل في هذا الإطار بسبب خطأ، أي تم تنشيط حدث onErrorOccurred.

      • frameType
        الإصدار 106 من Chrome أو الإصدارات الأحدث

        نوع الإطار الذي حدث فيه التنقل.

      • parentDocumentId

        سلسلة اختيارية

        الإصدار 106 من Chrome أو الإصدارات الأحدث

        معرّف فريد عالمي للمستند الرئيسي الذي يملك هذا الإطار. ولا يتم ضبط ذلك إذا لم يكن هناك عنصر رئيسي.

      • parentFrameId

        الرقم

        رقم تعريف الإطار الرئيسي، أو -1 إذا كان هذا هو الإطار الرئيسي.

      • url

        سلسلة

        عنوان URL المرتبط حاليًا بهذا الإطار، إذا كان الإطار المحدّد من خلال رقم تعريف الإطار متوفرًا في نقطة معيّنة ضمن علامة التبويب المحدّدة. لا يشير كون عنوان URL مرتبطًا بمعرّف إطار محدد إلى أنّ الإطار المقابل لا يزال متوفّرًا.

المرتجعات

  • Promise&lt;object | غير محددة>

    الإصدار 93 من Chrome أو الإصدارات الأحدث

    تتوفّر الوعود في الإصدار Manifest V3 والإصدارات الأحدث، ولكن يتم توفير معاودة الاتصال. التوافق مع الأنظمة القديمة. لا يمكنك استخدام كلتيهما في نفس استدعاء الدالة. تشير رسالة الأشكال البيانية يتم حل الوعد بنفس النوع الذي يتم إرساله إلى معاودة الاتصال.

فعاليات

onBeforeNavigate

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

يتم إطلاقها عندما يكون التنقّل على وشك الحدوث.

المعلمات

  • رد الاتصال

    دالة

    تظهر المَعلمة callback على النحو التالي:

    (details: object) => void

    • التفاصيل

      كائن

      • الإصدار 106 من Chrome أو الإصدارات الأحدث

        دورة الحياة التي يكون فيها المستند

      • frameId

        الرقم

        0 يشير إلى حدوث التنقل في نافذة محتوى علامة التبويب؛ تشير القيمة الموجبة إلى التنقل في إطار فرعي. تكون معرفات الإطارات فريدة لعلامة تبويب وعملية معينة.

      • الإصدار 106 من Chrome أو الإصدارات الأحدث

        نوع الإطار الذي حدث فيه التنقل.

      • parentDocumentId

        سلسلة اختيارية

        الإصدار 106 من Chrome أو الإصدارات الأحدث

        معرّف فريد عالمي للمستند الرئيسي الذي يملك هذا الإطار. ولا يتم ضبط ذلك إذا لم يكن هناك عنصر رئيسي.

      • parentFrameId

        الرقم

        رقم تعريف الإطار الرئيسي، أو -1 إذا كان هذا هو الإطار الرئيسي.

      • processId

        الرقم

        متوقّف منذ إصدار Chrome 50

        لم يعُد يتم ضبط رقم تعريف العملية لهذا الحدث، وذلك لأنّ العملية التي ستعرض المستند الناتج غير معروفة حتى يتم تنفيذ العملية في onCommit.

        القيمة -1.

      • tabId

        الرقم

        رقم تعريف علامة التبويب التي يوشك التنقّل فيها.

      • timeStamp

        الرقم

        الوقت الذي كان فيه المتصفّح على وشك بدء التنقّل، بالمللي ثانية منذ بدء حساب الفترة

      • url

        سلسلة

  • الفلاتر

    الكائن اختياري

    • الشروط التي يجب أن يستوفيها عنوان URL الذي يتم الانتقال إليه. "المخططات" و"المنافذ" يتم تجاهل حقول UrlFilter لهذا الحدث.

onCommitted

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

يتم الإطلاق عند الالتزام بالتنقل. قد يستمر تنزيل المستند (والموارد التي يشير إليها، مثل الصور والإطارات الفرعية)، إلا أنه تم استلام جزء من المستند على الأقل من الخادم وقرر المتصفح التبديل إلى المستند الجديد.

المعلمات

  • رد الاتصال

    دالة

    تظهر المَعلمة callback على النحو التالي:

    (details: object) => void

    • التفاصيل

      كائن

      • documentId

        سلسلة

        الإصدار 106 من Chrome أو الإصدارات الأحدث

        معرّف فريد عالمي للمستند الذي تم تحميله

      • الإصدار 106 من Chrome أو الإصدارات الأحدث

        دورة الحياة التي يكون فيها المستند

      • frameId

        الرقم

        0 يشير إلى حدوث التنقل في نافذة محتوى علامة التبويب؛ تشير القيمة الموجبة إلى التنقل في إطار فرعي. تكون معرفات الإطارات فريدة داخل علامة تبويب.

      • الإصدار 106 من Chrome أو الإصدارات الأحدث

        نوع الإطار الذي حدث فيه التنقل.

      • parentDocumentId

        سلسلة اختيارية

        الإصدار 106 من Chrome أو الإصدارات الأحدث

        معرّف فريد عالمي للمستند الرئيسي الذي يملك هذا الإطار. ولا يتم ضبط ذلك إذا لم يكن هناك عنصر رئيسي.

      • parentFrameId

        الرقم

        الإصدار 74 من Chrome أو الإصدارات الأحدث

        رقم تعريف الإطار الرئيسي، أو -1 إذا كان هذا هو الإطار الرئيسي.

      • processId

        الرقم

        رقم تعريف العملية التي تشغّل العارض لهذا الإطار.

      • tabId

        الرقم

        رقم تعريف علامة التبويب التي يحدث فيها التنقُّل.

      • timeStamp

        الرقم

        الوقت الذي تم فيه إكمال التنقّل بالمللي ثانية منذ تاريخ بدء حساب الفترة

      • transitionQualifiers

        قائمة بمؤهِّلات الانتقالات.

      • transitionType

        سبب التنقّل.

      • url

        سلسلة

  • الفلاتر

    الكائن اختياري

    • الشروط التي يجب أن يستوفيها عنوان URL الذي يتم الانتقال إليه. "المخططات" و"المنافذ" يتم تجاهل حقول UrlFilter لهذا الحدث.

onCompleted

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

يتم تنشيطها عندما يتم تحميل مستند، بما في ذلك الموارد التي يشير إليها، وإعداده بالكامل.

المعلمات

  • رد الاتصال

    دالة

    تظهر المَعلمة callback على النحو التالي:

    (details: object) => void

    • التفاصيل

      كائن

      • documentId

        سلسلة

        الإصدار 106 من Chrome أو الإصدارات الأحدث

        معرّف فريد عالمي للمستند الذي تم تحميله

      • الإصدار 106 من Chrome أو الإصدارات الأحدث

        دورة الحياة التي يكون فيها المستند

      • frameId

        الرقم

        0 يشير إلى حدوث التنقل في نافذة محتوى علامة التبويب؛ تشير القيمة الموجبة إلى التنقل في إطار فرعي. تكون معرفات الإطارات فريدة داخل علامة تبويب.

      • الإصدار 106 من Chrome أو الإصدارات الأحدث

        نوع الإطار الذي حدث فيه التنقل.

      • parentDocumentId

        سلسلة اختيارية

        الإصدار 106 من Chrome أو الإصدارات الأحدث

        معرّف فريد عالمي للمستند الرئيسي الذي يملك هذا الإطار. ولا يتم ضبط ذلك إذا لم يكن هناك عنصر رئيسي.

      • parentFrameId

        الرقم

        الإصدار 74 من Chrome أو الإصدارات الأحدث

        رقم تعريف الإطار الرئيسي، أو -1 إذا كان هذا هو الإطار الرئيسي.

      • processId

        الرقم

        رقم تعريف العملية التي تشغّل العارض لهذا الإطار.

      • tabId

        الرقم

        رقم تعريف علامة التبويب التي يحدث فيها التنقُّل.

      • timeStamp

        الرقم

        الوقت الذي انتهى فيه تحميل المستند بالمللي ثانية منذ تاريخ بدء حساب الفترة

      • url

        سلسلة

  • الفلاتر

    الكائن اختياري

    • الشروط التي يجب أن يستوفيها عنوان URL الذي يتم الانتقال إليه. "المخططات" و"المنافذ" يتم تجاهل حقول UrlFilter لهذا الحدث.

onCreatedNavigationTarget

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

يتم تنشيطها عند إنشاء نافذة جديدة أو علامة تبويب جديدة في نافذة حالية لاستضافة عملية تنقّل.

المعلمات

  • رد الاتصال

    دالة

    تظهر المَعلمة callback على النحو التالي:

    (details: object) => void

    • التفاصيل

      كائن

      • sourceFrameId

        الرقم

        رقم تعريف الإطار الذي يحتوي على sourceTabId الذي تم فيه بدء التنقّل. 0 يشير إلى الإطار الرئيسي.

      • sourceProcessId

        الرقم

        رقم تعريف العملية التي تشغِّل العارض لإطار المصدر.

      • sourceTabId

        الرقم

        رقم تعريف علامة التبويب التي تم بدء التنقّل فيها.

      • tabId

        الرقم

        رقم تعريف علامة التبويب التي تم فتح عنوان URL فيها

      • timeStamp

        الرقم

        الوقت الذي كان فيه المتصفّح على وشك إنشاء طريقة عرض جديدة بالمللي ثانية منذ تاريخ بدء حساب الفترة

      • url

        سلسلة

        عنوان URL الذي سيتم فتحه في النافذة الجديدة

  • الفلاتر

    الكائن اختياري

    • الشروط التي يجب أن يستوفيها عنوان URL الذي يتم الانتقال إليه. "المخططات" و"المنافذ" يتم تجاهل حقول UrlFilter لهذا الحدث.

onDOMContentLoaded

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

يتم الإطلاق عند اكتمال إنشاء نموذج العناصر في المستند (DOM) للصفحة، ولكن قد لا ينتهِ تحميل الموارد المُشار إليها.

المعلمات

  • رد الاتصال

    دالة

    تظهر المَعلمة callback على النحو التالي:

    (details: object) => void

    • التفاصيل

      كائن

      • documentId

        سلسلة

        الإصدار 106 من Chrome أو الإصدارات الأحدث

        معرّف فريد عالمي للمستند الذي تم تحميله

      • الإصدار 106 من Chrome أو الإصدارات الأحدث

        دورة الحياة التي يكون فيها المستند

      • frameId

        الرقم

        0 يشير إلى حدوث التنقل في نافذة محتوى علامة التبويب؛ تشير القيمة الموجبة إلى التنقل في إطار فرعي. تكون معرفات الإطارات فريدة داخل علامة تبويب.

      • الإصدار 106 من Chrome أو الإصدارات الأحدث

        نوع الإطار الذي حدث فيه التنقل.

      • parentDocumentId

        سلسلة اختيارية

        الإصدار 106 من Chrome أو الإصدارات الأحدث

        معرّف فريد عالمي للمستند الرئيسي الذي يملك هذا الإطار. ولا يتم ضبط ذلك إذا لم يكن هناك عنصر رئيسي.

      • parentFrameId

        الرقم

        الإصدار 74 من Chrome أو الإصدارات الأحدث

        رقم تعريف الإطار الرئيسي، أو -1 إذا كان هذا هو الإطار الرئيسي.

      • processId

        الرقم

        رقم تعريف العملية التي تشغّل العارض لهذا الإطار.

      • tabId

        الرقم

        رقم تعريف علامة التبويب التي يحدث فيها التنقُّل.

      • timeStamp

        الرقم

        يشير ذلك المصطلح إلى الوقت الذي تم فيه إنشاء نموذج العناصر في المستند (DOM) للصفحة بالكامل، بالمللي ثانية منذ تاريخ بدء حساب الفترة.

      • url

        سلسلة

  • الفلاتر

    الكائن اختياري

    • الشروط التي يجب أن يستوفيها عنوان URL الذي يتم الانتقال إليه. "المخططات" و"المنافذ" يتم تجاهل حقول UrlFilter لهذا الحدث.

onErrorOccurred

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

يتم الإطلاق عند حدوث خطأ وإيقاف التنقّل. يمكن أن يحدث هذا إذا حدث خطأ في الشبكة، أو ألغى المستخدم التنقل.

المعلمات

  • رد الاتصال

    دالة

    تظهر المَعلمة callback على النحو التالي:

    (details: object) => void

    • التفاصيل

      كائن

      • documentId

        سلسلة

        الإصدار 106 من Chrome أو الإصدارات الأحدث

        معرّف فريد عالمي للمستند الذي تم تحميله

      • الإصدار 106 من Chrome أو الإصدارات الأحدث

        دورة الحياة التي يكون فيها المستند

      • خطأ

        سلسلة

        وصف الخطأ.

      • frameId

        الرقم

        0 يشير إلى حدوث التنقل في نافذة محتوى علامة التبويب؛ تشير القيمة الموجبة إلى التنقل في إطار فرعي. تكون معرفات الإطارات فريدة داخل علامة تبويب.

      • الإصدار 106 من Chrome أو الإصدارات الأحدث

        نوع الإطار الذي حدث فيه التنقل.

      • parentDocumentId

        سلسلة اختيارية

        الإصدار 106 من Chrome أو الإصدارات الأحدث

        معرّف فريد عالمي للمستند الرئيسي الذي يملك هذا الإطار. ولا يتم ضبط ذلك إذا لم يكن هناك عنصر رئيسي.

      • parentFrameId

        الرقم

        الإصدار 74 من Chrome أو الإصدارات الأحدث

        رقم تعريف الإطار الرئيسي، أو -1 إذا كان هذا هو الإطار الرئيسي.

      • processId

        الرقم

        متوقّف منذ إصدار Chrome 50

        لم يعُد رقم تعريف العملية مخصّصًا لهذا الحدث.

        القيمة -1.

      • tabId

        الرقم

        رقم تعريف علامة التبويب التي يحدث فيها التنقُّل.

      • timeStamp

        الرقم

        الوقت الذي حدث فيه الخطأ بالمللي ثانية منذ تاريخ بدء حساب الفترة.

      • url

        سلسلة

  • الفلاتر

    الكائن اختياري

    • الشروط التي يجب أن يستوفيها عنوان URL الذي يتم الانتقال إليه. "المخططات" و"المنافذ" يتم تجاهل حقول UrlFilter لهذا الحدث.

onHistoryStateUpdated

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

يتم تشغيله عند تعديل سجلّ الإطار إلى عنوان URL جديد. وستستخدم جميع الأحداث المستقبلية لهذا الإطار عنوان URL المعدَّل.

المعلمات

  • رد الاتصال

    دالة

    تظهر المَعلمة callback على النحو التالي:

    (details: object) => void

    • التفاصيل

      كائن

      • documentId

        سلسلة

        الإصدار 106 من Chrome أو الإصدارات الأحدث

        معرّف فريد عالمي للمستند الذي تم تحميله

      • الإصدار 106 من Chrome أو الإصدارات الأحدث

        دورة الحياة التي يكون فيها المستند

      • frameId

        الرقم

        0 يشير إلى حدوث التنقل في نافذة محتوى علامة التبويب؛ تشير القيمة الموجبة إلى التنقل في إطار فرعي. تكون معرفات الإطارات فريدة داخل علامة تبويب.

      • الإصدار 106 من Chrome أو الإصدارات الأحدث

        نوع الإطار الذي حدث فيه التنقل.

      • parentDocumentId

        سلسلة اختيارية

        الإصدار 106 من Chrome أو الإصدارات الأحدث

        معرّف فريد عالمي للمستند الرئيسي الذي يملك هذا الإطار. ولا يتم ضبط ذلك إذا لم يكن هناك عنصر رئيسي.

      • parentFrameId

        الرقم

        الإصدار 74 من Chrome أو الإصدارات الأحدث

        رقم تعريف الإطار الرئيسي، أو -1 إذا كان هذا هو الإطار الرئيسي.

      • processId

        الرقم

        رقم تعريف العملية التي تشغّل العارض لهذا الإطار.

      • tabId

        الرقم

        رقم تعريف علامة التبويب التي يحدث فيها التنقُّل.

      • timeStamp

        الرقم

        الوقت الذي تم فيه إكمال التنقّل بالمللي ثانية منذ تاريخ بدء حساب الفترة

      • transitionQualifiers

        قائمة بمؤهِّلات الانتقالات.

      • transitionType

        سبب التنقّل.

      • url

        سلسلة

  • الفلاتر

    الكائن اختياري

    • الشروط التي يجب أن يستوفيها عنوان URL الذي يتم الانتقال إليه. "المخططات" و"المنافذ" يتم تجاهل حقول UrlFilter لهذا الحدث.

onReferenceFragmentUpdated

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

يتم إطلاقه عند تعديل جزء المرجع في إطار. وستستخدم جميع الأحداث المستقبلية لهذا الإطار عنوان URL المعدَّل.

المعلمات

  • رد الاتصال

    دالة

    تظهر المَعلمة callback على النحو التالي:

    (details: object) => void

    • التفاصيل

      كائن

      • documentId

        سلسلة

        الإصدار 106 من Chrome أو الإصدارات الأحدث

        معرّف فريد عالمي للمستند الذي تم تحميله

      • الإصدار 106 من Chrome أو الإصدارات الأحدث

        دورة الحياة التي يكون فيها المستند

      • frameId

        الرقم

        0 يشير إلى حدوث التنقل في نافذة محتوى علامة التبويب؛ تشير القيمة الموجبة إلى التنقل في إطار فرعي. تكون معرفات الإطارات فريدة داخل علامة تبويب.

      • الإصدار 106 من Chrome أو الإصدارات الأحدث

        نوع الإطار الذي حدث فيه التنقل.

      • parentDocumentId

        سلسلة اختيارية

        الإصدار 106 من Chrome أو الإصدارات الأحدث

        معرّف فريد عالمي للمستند الرئيسي الذي يملك هذا الإطار. ولا يتم ضبط ذلك إذا لم يكن هناك عنصر رئيسي.

      • parentFrameId

        الرقم

        الإصدار 74 من Chrome أو الإصدارات الأحدث

        رقم تعريف الإطار الرئيسي، أو -1 إذا كان هذا هو الإطار الرئيسي.

      • processId

        الرقم

        رقم تعريف العملية التي تشغّل العارض لهذا الإطار.

      • tabId

        الرقم

        رقم تعريف علامة التبويب التي يحدث فيها التنقُّل.

      • timeStamp

        الرقم

        الوقت الذي تم فيه إكمال التنقّل بالمللي ثانية منذ تاريخ بدء حساب الفترة

      • transitionQualifiers

        قائمة بمؤهِّلات الانتقالات.

      • transitionType

        سبب التنقّل.

      • url

        سلسلة

  • الفلاتر

    الكائن اختياري

    • الشروط التي يجب أن يستوفيها عنوان URL الذي يتم الانتقال إليه. "المخططات" و"المنافذ" يتم تجاهل حقول UrlFilter لهذا الحدث.

onTabReplaced

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

يتم إطلاقه عندما يتم استبدال محتوى علامة التبويب بعلامة تبويب مختلفة (يتم عرضها مسبقًا عادةً).

المعلمات

  • رد الاتصال

    دالة

    تظهر المَعلمة callback على النحو التالي:

    (details: object) => void

    • التفاصيل

      كائن

      • replacedTabId

        الرقم

        رقم تعريف علامة التبويب التي تم استبدالها.

      • tabId

        الرقم

        رقم تعريف علامة التبويب التي استبدلت علامة التبويب القديمة.

      • timeStamp

        الرقم

        الوقت الذي حدث فيه الاستبدال بالمللي ثانية منذ تاريخ بدء حساب الفترة.