Spec-Zone.ru › Web Extensions

runtime.getFrameId()

Возвращает идентификатор фрейма любого глобального объекта окна или элемента фрейма, когда вызывается из скрипта контента или страницы расширения, включая страницы фона.

Синтаксис

let gettingInfo = browser.runtime.getFrameId(
  target               // object
)

Параметры

target

Объект WindowProxy или контейнер контекста просмотра элемента (iframe, frame, embed или object) целевого фрейма.

Возвращаемое значение

Возвращает идентификатор фрейма целевого фрейма или -1, если фрейм не существует.

Примеры

Этот код рекурсивно обходит фреймы-потомки и получает идентификаторы родительских фреймов.

const parents = {};

function visit(win) {
  const frameId = browser.runtime.getFrameId(win);
  const parentId = browser.runtime.getFrameId(win.parent);
  parents[frameId] = win.parent !== win ? parentId : -1;

  try {
    const frameEl = browser.runtime.getFrameId(win.frameElement);
    browser.test.assertEq(frameId, frameEl, "frameElement id correct");
  } catch (e) {
    // Can't access a cross-origin .frameElement.
  }

  for (const frame of win.frames) {
    visit(frame);
  }
}
visit(window);

Совместимость с браузерами

Рабочий стол Мобильные устройства
Chrome Edge Firefox Internet Explorer Opera Safari WebView Android Chrome Android Firefox для Android Opera Android Safari на iOS Samsung Internet
getFrameId Нет Нет 96 ? Нет 16 ? ? 96 ? 16 ?

Примечание: Данные о совместимости Microsoft Edge предоставлены компанией Microsoft Corporation и включены здесь по лицензии Creative Commons Attribution 3.0 United States.

© 2005–2023 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/API/runtime/getFrameId

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API