Opis
Używaj interfejsu API chrome.webNavigation
, aby otrzymywać powiadomienia o stanie próśb o nawigację w drodze.
Uprawnienia
webNavigation
Plik manifestu
Wszystkie metody i zdarzenia funkcji chrome.webNavigation
wymagają zadeklarowania funkcji „webNavigation” uprawnienia
w pliku manifestu rozszerzenia. Na przykład:
{
"name": "My extension",
...
"permissions": [
"webNavigation"
],
...
}
Kolejność wydarzeń
Ukończona nawigacja jest uruchamiana ze zdarzeniami w następującej kolejności:
onBeforeNavigate -> onCommitted -> [onDOMContentLoaded] -> onCompleted
Każdy błąd występujący w trakcie tego procesu skutkuje zdarzeniem onErrorOccurred
. Konkretna
nie uruchamiają się kolejne zdarzenia po onErrorOccurred
.
Jeśli ramka nawigacyjna zawiera ramki podrzędne, jej element onCommitted
jest uruchamiany przed tagiem podrzędnym
onBeforeNavigate
a onCompleted
jest uruchamiany po wszystkich jego zdarzeniach podrzędnych onCompleted
.
Jeśli zmieni się fragment odniesienia w ramce, wywoływane jest zdarzenie onReferenceFragmentUpdated
. Ten
zdarzenie może zostać wysłane w dowolnym momencie po onDOMContentLoaded
, nawet po onCompleted
.
Jeśli do modyfikowania stanu ramki używany jest interfejs History API (np. za pomocą interfejsu history.pushState()
,
Uruchamiane jest zdarzenie onHistoryStateUpdated
. To zdarzenie może zostać uruchomione w dowolnym momencie po onDOMContentLoaded
.
Jeśli nawigacja przywróciła stronę z pamięci podręcznej stanu strony internetowej, zdarzenie onDOMContentLoaded
nie uruchomi się. Zdarzenie nie jest wywoływane, ponieważ treść została już wczytana, gdy strona
została odwiedzona po raz pierwszy.
Jeśli nawigacja została wywołana przez wyszukiwanie dynamiczne w Chrome lub strony dynamiczne,
strona zostanie zastąpiona bieżącą kartą. W takim przypadku wywoływane jest zdarzenie onTabReplaced
.
Relacja ze zdarzeniami webRequest
Nie ma zdefiniowanej kolejności zdarzeń z interfejsu API webRequest WebNavigation API. Możliwe, że zdarzenia WebRequest nadal będą odbierane w przypadku ramek, które już rozpoczęto nową nawigację lub przejście do niej następuje dopiero wtedy, gdy zasoby sieciowe są już dostępne w pełni załadowany.
Ogólnie zdarzenia webNavigation są ściśle powiązane ze stanem nawigacji w interfejsie użytkownika, a zdarzenia webRequest odpowiadają stanowi stosu sieciowego, są zazwyczaj nieczytelne dla użytkownika.
Identyfikatory kart
Nie wszystkie karty, z którymi się poruszasz, odpowiadają kartom w interfejsie Chrome. Na przykład karta, która jest otwierana
wstępnie wyrenderowana. Takie karty nie są dostępne za pomocą interfejsu tabs API ani nie można prosić o informacje.
o nich w webNavigation.getFrame
lub webNavigation.getAllFrames
. Po zmianie karty
w których przypadku wywoływane jest zdarzenie onTabReplaced
, które staje się dostępne przez te interfejsy API.
Sygnatury czasowe
Warto zauważyć, że system operacyjny obsługuje pewne dziwne problemy techniczne z różnymi
mogą spowodować zniekształcenia zegara między samą przeglądarką a procesami rozszerzeń. To
oznacza, że zdarzenia WebNavigation Gwarantujemy, że właściwość timeStamp
będzie dostępna tylko wewnętrznie
spójne. Porównanie jednego wydarzenia z innym zapewni Ci odpowiednie przesunięcie, ale
porównując je z bieżącą godziną w rozszerzeniu (np. przy użyciu aplikacji (new Date()).getTime()
)
może dać nieoczekiwane rezultaty.
Identyfikatory ramek
Ramki na karcie można rozpoznać po identyfikatorze ramki. Identyfikator ramki głównej to zawsze 0, Identyfikator ramek podrzędnych jest liczbą dodatnią. Po utworzeniu dokumentu w ramce identyfikator tej ramki pozostaje bez zmian przez cały okres istnienia dokumentu. Od Chrome 49 ten identyfikator jest też stały dla czas wyświetlania klatki (w ramach wielu nawigacji).
Ze względu na wieloprocesowy charakter Chrome karta może wykorzystywać inne procesy do renderowania źródła.
i miejsce docelowe strony. Dlatego, jeśli nawigacja odbywa się w nowym procesie,
zdarzeń ze starej i nowej strony do momentu wprowadzenia nowej nawigacji (tj.
dla nowej ramki głównej wysyłane jest zdarzenie onCommitted
. Innymi słowy, można zwiększyć
niż jedną oczekującą sekwencję zdarzeń WebNavigation z tą samą wartością frameId
. Sekwencje mogą być
można je rozpoznać po kluczu processId
.
Pamiętaj też, że podczas wczytywania tymczasowego proces może zostać kilkakrotnie przełączony. Dzieje się tak
gdy wczytywanie jest przekierowywane na inną stronę. W takim przypadku otrzymasz kilka odpowiedzi.
onBeforeNavigate
i onErrorOccurred
, aż otrzymasz ostatnie zdarzenie onCommitted
.
Kolejny problem związany z rozszerzeniami to cykl życia ramki. Ramka zawiera dokument (powiązany z zatwierdzonym adresem URL). Dokument może się zmienić (np. w nawigacji), ale parametr frameId nie. trudno powiązać, że coś się wydarzyło w konkretnym dokumencie tylko frameIds. Wprowadzamy pojęcie documentId. który jest unikalnym identyfikatorem dokumentu. Jeśli po przejściu w ramach ramki otworzy się nowy dokument, identyfikator się zmieni. To pole jest przydatne do określania, gdy strony zmieniają stan cyklu życia (między renderowaniem wstępnym/aktywnym/pamięcią podręczną). bo nic się nie zmienia.
Typy przejść i kwalifikatory
Zdarzenie onCommitted
interfejsu webNavigation API zawiera transitionType
i transitionQualifiers
usłudze. Typ przejścia jest taki sam jak używany w interfejsie API historii opisującym sposób
użytkownik przeszedł na dany adres URL. Poza tym można podać kilka kwalifikatorów przejścia,
zwróciła bardziej szczegółową definicję nawigacji.
Istnieją te kwalifikatory przejścia:
Kwalifikator przejścia | Opis |
---|---|
„client_redirect” | Podczas nawigacji na stronie wystąpiło co najmniej jedno przekierowanie spowodowane przez tagi JavaScript lub metaodświeżanie. |
„server_redirect” | Podczas nawigacji wystąpiło co najmniej jedno przekierowanie spowodowane przez nagłówki HTTP wysłane z serwera. |
„forward_back” | Użytkownik użył przycisku Dalej lub Wstecz, aby rozpocząć nawigację. |
"from_address_bar" | Użytkownik zainicjował nawigację z paska adresu (nazywanego też omniboksem). |
Przykłady
Aby wypróbować ten interfejs API, zainstaluj przykładowy interfejs webNavigation API ze strony chrome-extension-samples. z repozytorium.
Typy
TransitionQualifier
Typ wyliczeniowy
"client_redirect"
"server_redirect"
"forward_back"
"from_address_bar"
TransitionType
Przyczyna nawigacji. Użyto tych samych typów przejść, które są określone w interfejsie History API. Są to te same typy przejść, które zostały zdefiniowane w interfejsie API historii, z wyjątkiem użycia "start_page"
zamiast "auto_toplevel"
(w celu zapewnienia zgodności wstecznej).
Typ wyliczeniowy
"link"
"typed"
"auto_bookmark"
"auto_subframe"
"manual_subframe",
"wygenerowano"
"start_page"
"form_submit"
"reload"
"słowo kluczowe"
"keyword_generated"
Metody
getAllFrames()
chrome.webNavigation.getAllFrames(
details: object,
callback?: function,
)
Pobiera informacje o wszystkich ramkach na danej karcie.
Parametry
-
szczegóły
Obiekt
Informacje o karcie, z której mają zostać pobrane wszystkie klatki.
-
tabId
liczba
Identyfikator karty.
-
-
wywołanie zwrotne
funkcja optional
Parametr
callback
wygląda tak:(details?: object[]) => void
-
szczegóły
obiekt[] opcjonalny
Lista ramek na danej karcie. Jeśli podany identyfikator karty jest nieprawidłowy, ma wartość null.
-
documentId
ciąg znaków
Chrome 106 lub nowszy .Identyfikator UUID wczytanego dokumentu.
-
documentLifecycleChrome 106 lub nowszy .
Cykl życia dokumentu.
-
errorOccurred
wartość logiczna
Wartość true, jeśli ostatnie przejście w tej ramce zostało przerwane w wyniku błędu, tj. zostało uruchomione zdarzenie onErrorOccurred.
-
frameId
liczba
Identyfikator ramki. 0 oznacza, że jest to ramka główna. wartość dodatnia wskazuje identyfikator ramki podrzędnej.
-
frameTypeChrome 106 lub nowszy .
Typ ramki, w której wystąpiła nawigacja.
-
parentDocumentId
ciąg znaków opcjonalny
Chrome 106 lub nowszy .Identyfikator UUID dokumentu nadrzędnego, w którym znajduje się ta ramka. Ta wartość nie jest ustawiona, jeśli nie ma elementu nadrzędnego.
-
parentFrameId
liczba
Identyfikator ramki nadrzędnej lub
-1
, jeśli jest to ramka główna. -
processId
liczba
Identyfikator procesu, który uruchamia mechanizm renderowania danej ramki.
-
URL
ciąg znaków
Adres URL aktualnie powiązany z tą ramką.
-
-
Zwroty
-
Promise<object[] | niezdefiniowane>
Chrome w wersji 93 lub nowszej .Obietnice są obsługiwane tylko na platformie Manifest V3 i nowszych, inne platformy muszą używać wywołań zwrotnych.
getFrame()
chrome.webNavigation.getFrame(
details: object,
callback?: function,
)
Pobiera informacje o danej ramce. Ramka odnosi się do elementu <iframe> lub <frame> na stronie internetowej i identyfikowany na podstawie identyfikatora karty i ramki.
Parametry
-
szczegóły
Obiekt
Informacje o ramce, o której mają zostać pobrane informacje.
-
documentId
ciąg znaków opcjonalny
Chrome 106 lub nowszy .Identyfikator UUID dokumentu. Jeśli podasz identyfikator frameId lub tabId, zostaną one zweryfikowane pod kątem zgodności z dokumentem znalezionym na podstawie podanego identyfikatora dokumentu.
-
frameId
liczba opcjonalnie
Identyfikator ramki na danej karcie.
-
processId
liczba opcjonalnie
Wycofane od Chrome 49Ramki są teraz jednoznacznie identyfikowane na podstawie identyfikatora karty i ramki. identyfikator procesu nie jest już potrzebny i dlatego jest ignorowany.
Identyfikator procesu, który uruchamia mechanizm renderowania tej karty.
-
tabId
liczba opcjonalnie
Identyfikator karty, na której znajduje się ramka.
-
-
wywołanie zwrotne
funkcja optional
Parametr
callback
wygląda tak:(details?: object) => void
-
szczegóły
obiekt opcjonalny
Informacje o żądanej ramce. Jeśli podany identyfikator ramki lub identyfikator karty jest nieprawidłowy, mają wartość null.
-
documentId
ciąg znaków
Chrome 106 lub nowszy .Identyfikator UUID wczytanego dokumentu.
-
documentLifecycleChrome 106 lub nowszy .
Cykl życia dokumentu.
-
errorOccurred
wartość logiczna
Wartość true, jeśli ostatnie przejście w tej ramce zostało przerwane w wyniku błędu, tj. zostało uruchomione zdarzenie onErrorOccurred.
-
frameTypeChrome 106 lub nowszy .
Typ ramki, w której wystąpiła nawigacja.
-
parentDocumentId
ciąg znaków opcjonalny
Chrome 106 lub nowszy .Identyfikator UUID dokumentu nadrzędnego, w którym znajduje się ta ramka. Ta wartość nie jest ustawiona, jeśli nie ma elementu nadrzędnego.
-
parentFrameId
liczba
Identyfikator ramki nadrzędnej lub
-1
, jeśli jest to ramka główna. -
URL
ciąg znaków
Adres URL aktualnie powiązany z tą ramką, jeśli ramka wskazana przez parametr frameId istniała w jakimś miejscu na danej karcie. Fakt, że adres URL jest powiązany z danym parametrem frameId, nie oznacza, że dana ramka wciąż istnieje.
-
-
Zwroty
-
Promise<object | niezdefiniowane>
Chrome w wersji 93 lub nowszej .Obietnice są obsługiwane tylko na platformie Manifest V3 i nowszych, inne platformy muszą używać wywołań zwrotnych.
Wydarzenia
onBeforeNavigate
chrome.webNavigation.onBeforeNavigate.addListener(
callback: function,
filters?: object,
)
Uruchamiane, gdy nawigacja ma miejsce.
Parametry
-
funkcja
Parametr
callback
wygląda tak:(details: object) => void
-
Obiekt
-
Chrome 106 lub nowszy .
Cykl życia dokumentu.
-
liczba
0 oznacza, że nawigacja odbywa się w oknie zawartości karty. wartość dodatnia wskazuje nawigację w ramce podrzędnej. Identyfikator ramki jest unikalny dla danej karty i procesu.
-
Chrome 106 lub nowszy .
Typ ramki, w której wystąpiła nawigacja.
-
ciąg znaków opcjonalny
Chrome 106 lub nowszy .Identyfikator UUID dokumentu nadrzędnego, w którym znajduje się ta ramka. Ta wartość nie jest ustawiona, jeśli nie ma elementu nadrzędnego.
-
liczba
Identyfikator ramki nadrzędnej lub
-1
, jeśli jest to ramka główna. -
liczba
Wycofane od Chrome 50Wartość procesId nie jest już ustawiona dla tego zdarzenia, ponieważ proces, który renderuje powstały dokument, jest znany dopiero w onCommit.
Wartość –1.
-
liczba
Identyfikator karty, na której ma nastąpić nawigacja.
-
liczba
Czas rozpoczęcia nawigacji przez przeglądarkę (w milisekundach od początku epoki).
-
ciąg znaków
-
-
-
obiekt opcjonalny
-
Warunki, które musi spełniać otwierany adres URL. Schematy i „porty” Pola UrlFilter są ignorowane w przypadku tego zdarzenia.
-
onCommitted
chrome.webNavigation.onCommitted.addListener(
callback: function,
filters?: object,
)
Uruchamiane po zatwierdzeniu nawigacji. Dokument (i zasoby, do których się on odnosi, takie jak obrazy i ramki podrzędne) może być wciąż pobierany, ale co najmniej jego część została odebrana z serwera i przeglądarka zdecydowała się przełączyć na nowy dokument.
Parametry
-
wywołanie zwrotne
funkcja
Parametr
callback
wygląda tak:(details: object) => void
-
szczegóły
Obiekt
-
documentId
ciąg znaków
Chrome 106 lub nowszy .Identyfikator UUID wczytanego dokumentu.
-
documentLifecycleChrome 106 lub nowszy .
Cykl życia dokumentu.
-
frameId
liczba
0 oznacza, że nawigacja odbywa się w oknie zawartości karty. wartość dodatnia wskazuje nawigację w ramce podrzędnej. Identyfikatory ramek są unikalne w obrębie danej karty.
-
frameTypeChrome 106 lub nowszy .
Typ ramki, w której wystąpiła nawigacja.
-
parentDocumentId
ciąg znaków opcjonalny
Chrome 106 lub nowszy .Identyfikator UUID dokumentu nadrzędnego, w którym znajduje się ta ramka. Ta wartość nie jest ustawiona, jeśli nie ma elementu nadrzędnego.
-
parentFrameId
liczba
Chrome w wersji 74 lub nowszej .Identyfikator ramki nadrzędnej lub
-1
, jeśli jest to ramka główna. -
processId
liczba
Identyfikator procesu, który uruchamia mechanizm renderowania danej ramki.
-
tabId
liczba
Identyfikator karty, na której odbywa się nawigacja.
-
timeStamp
liczba
Czas zatwierdzenia nawigacji (w milisekundach od początku epoki).
-
transitionQualifiers
Lista kwalifikatorów przejścia.
-
transitionType
Przyczyna nawigacji.
-
URL
ciąg znaków
-
-
-
filtry
obiekt opcjonalny
-
URL
Warunki, które musi spełniać otwierany adres URL. Schematy i „porty” Pola UrlFilter są ignorowane w przypadku tego zdarzenia.
-
onCompleted
chrome.webNavigation.onCompleted.addListener(
callback: function,
filters?: object,
)
Uruchamiane, gdy dokument wraz z zasobami, do których się odnosi, zostanie w pełni wczytany i zainicjowany.
Parametry
-
wywołanie zwrotne
funkcja
Parametr
callback
wygląda tak:(details: object) => void
-
szczegóły
Obiekt
-
documentId
ciąg znaków
Chrome 106 lub nowszy .Identyfikator UUID wczytanego dokumentu.
-
documentLifecycleChrome 106 lub nowszy .
Cykl życia dokumentu.
-
frameId
liczba
0 oznacza, że nawigacja odbywa się w oknie zawartości karty. wartość dodatnia wskazuje nawigację w ramce podrzędnej. Identyfikatory ramek są unikalne w obrębie danej karty.
-
frameTypeChrome 106 lub nowszy .
Typ ramki, w której wystąpiła nawigacja.
-
parentDocumentId
ciąg znaków opcjonalny
Chrome 106 lub nowszy .Identyfikator UUID dokumentu nadrzędnego, w którym znajduje się ta ramka. Ta wartość nie jest ustawiona, jeśli nie ma elementu nadrzędnego.
-
parentFrameId
liczba
Chrome w wersji 74 lub nowszej .Identyfikator ramki nadrzędnej lub
-1
, jeśli jest to ramka główna. -
processId
liczba
Identyfikator procesu, który uruchamia mechanizm renderowania danej ramki.
-
tabId
liczba
Identyfikator karty, na której odbywa się nawigacja.
-
timeStamp
liczba
Czas zakończenia wczytywania dokumentu (w milisekundach od początku epoki).
-
URL
ciąg znaków
-
-
-
filtry
obiekt opcjonalny
-
URL
Warunki, które musi spełniać otwierany adres URL. Schematy i „porty” Pola UrlFilter są ignorowane w przypadku tego zdarzenia.
-
onCreatedNavigationTarget
chrome.webNavigation.onCreatedNavigationTarget.addListener(
callback: function,
filters?: object,
)
Uruchamiane, gdy w istniejącym oknie zostanie utworzona nowa karta lub nowe okno przeznaczone na nawigację.
Parametry
-
funkcja
Parametr
callback
wygląda tak:(details: object) => void
-
Obiekt
-
liczba
Identyfikator ramki z identyfikatorem sourceTabId, w której uruchomiono nawigację. 0 oznacza klatkę główną.
-
liczba
Identyfikator procesu, który uruchamia mechanizm renderowania ramki źródłowej.
-
liczba
Identyfikator karty, po której uruchomiono nawigację.
-
liczba
Identyfikator karty, na której został otwarty adres URL
-
liczba
Godzina utworzenia nowego widoku w przeglądarce (w milisekundach od początku epoki).
-
ciąg znaków
Adres URL, który ma zostać otwarty w nowym oknie.
-
-
-
obiekt opcjonalny
-
Warunki, które musi spełniać otwierany adres URL. Schematy i „porty” Pola UrlFilter są ignorowane w przypadku tego zdarzenia.
-
onDOMContentLoaded
chrome.webNavigation.onDOMContentLoaded.addListener(
callback: function,
filters?: object,
)
Uruchamiane, gdy DOM strony jest w pełni skonstruowany, ale wczytywane zasoby mogą się nie wczytać do końca.
Parametry
-
wywołanie zwrotne
funkcja
Parametr
callback
wygląda tak:(details: object) => void
-
szczegóły
Obiekt
-
documentId
ciąg znaków
Chrome 106 lub nowszy .Identyfikator UUID wczytanego dokumentu.
-
documentLifecycleChrome 106 lub nowszy .
Cykl życia dokumentu.
-
frameId
liczba
0 oznacza, że nawigacja odbywa się w oknie zawartości karty. wartość dodatnia wskazuje nawigację w ramce podrzędnej. Identyfikatory ramek są unikalne w obrębie danej karty.
-
frameTypeChrome 106 lub nowszy .
Typ ramki, w której wystąpiła nawigacja.
-
parentDocumentId
ciąg znaków opcjonalny
Chrome 106 lub nowszy .Identyfikator UUID dokumentu nadrzędnego, w którym znajduje się ta ramka. Ta wartość nie jest ustawiona, jeśli nie ma elementu nadrzędnego.
-
parentFrameId
liczba
Chrome w wersji 74 lub nowszej .Identyfikator ramki nadrzędnej lub
-1
, jeśli jest to ramka główna. -
processId
liczba
Identyfikator procesu, który uruchamia mechanizm renderowania danej ramki.
-
tabId
liczba
Identyfikator karty, na której odbywa się nawigacja.
-
timeStamp
liczba
Czas utworzenia pełnego modelu DOM strony (w milisekundach od początku epoki).
-
URL
ciąg znaków
-
-
-
filtry
obiekt opcjonalny
-
URL
Warunki, które musi spełniać otwierany adres URL. Schematy i „porty” Pola UrlFilter są ignorowane w przypadku tego zdarzenia.
-
onErrorOccurred
chrome.webNavigation.onErrorOccurred.addListener(
callback: function,
filters?: object,
)
Uruchamiane, gdy wystąpi błąd i nawigacja zostanie przerwana. Może się tak zdarzyć, jeśli wystąpił błąd sieci lub użytkownik przerwał nawigację.
Parametry
-
wywołanie zwrotne
funkcja
Parametr
callback
wygląda tak:(details: object) => void
-
szczegóły
Obiekt
-
documentId
ciąg znaków
Chrome 106 lub nowszy .Identyfikator UUID wczytanego dokumentu.
-
documentLifecycleChrome 106 lub nowszy .
Cykl życia dokumentu.
-
błąd
ciąg znaków
Opis błędu.
-
frameId
liczba
0 oznacza, że nawigacja odbywa się w oknie zawartości karty. wartość dodatnia wskazuje nawigację w ramce podrzędnej. Identyfikatory ramek są unikalne w obrębie danej karty.
-
frameTypeChrome 106 lub nowszy .
Typ ramki, w której wystąpiła nawigacja.
-
parentDocumentId
ciąg znaków opcjonalny
Chrome 106 lub nowszy .Identyfikator UUID dokumentu nadrzędnego, w którym znajduje się ta ramka. Ta wartość nie jest ustawiona, jeśli nie ma elementu nadrzędnego.
-
parentFrameId
liczba
Chrome w wersji 74 lub nowszej .Identyfikator ramki nadrzędnej lub
-1
, jeśli jest to ramka główna. -
processId
liczba
Wycofane od Chrome 50Identyfikator procesu nie jest już ustawiony dla tego zdarzenia.
Wartość –1.
-
tabId
liczba
Identyfikator karty, na której odbywa się nawigacja.
-
timeStamp
liczba
Czas wystąpienia błędu (w milisekundach od początku epoki).
-
URL
ciąg znaków
-
-
-
filtry
obiekt opcjonalny
-
URL
Warunki, które musi spełniać otwierany adres URL. Schematy i „porty” Pola UrlFilter są ignorowane w przypadku tego zdarzenia.
-
onHistoryStateUpdated
chrome.webNavigation.onHistoryStateUpdated.addListener(
callback: function,
filters?: object,
)
Uruchamiane po zaktualizowaniu historii ramki do nowego adresu URL. Wszystkie przyszłe zdarzenia dotyczące tej ramki będą używać zaktualizowanego adresu URL.
Parametry
-
wywołanie zwrotne
funkcja
Parametr
callback
wygląda tak:(details: object) => void
-
szczegóły
Obiekt
-
documentId
ciąg znaków
Chrome 106 lub nowszy .Identyfikator UUID wczytanego dokumentu.
-
documentLifecycleChrome 106 lub nowszy .
Cykl życia dokumentu.
-
frameId
liczba
0 oznacza, że nawigacja odbywa się w oknie zawartości karty. wartość dodatnia wskazuje nawigację w ramce podrzędnej. Identyfikatory ramek są unikalne w obrębie danej karty.
-
frameTypeChrome 106 lub nowszy .
Typ ramki, w której wystąpiła nawigacja.
-
parentDocumentId
ciąg znaków opcjonalny
Chrome 106 lub nowszy .Identyfikator UUID dokumentu nadrzędnego, w którym znajduje się ta ramka. Ta wartość nie jest ustawiona, jeśli nie ma elementu nadrzędnego.
-
parentFrameId
liczba
Chrome w wersji 74 lub nowszej .Identyfikator ramki nadrzędnej lub
-1
, jeśli jest to ramka główna. -
processId
liczba
Identyfikator procesu, który uruchamia mechanizm renderowania danej ramki.
-
tabId
liczba
Identyfikator karty, na której odbywa się nawigacja.
-
timeStamp
liczba
Czas zatwierdzenia nawigacji (w milisekundach od początku epoki).
-
transitionQualifiers
Lista kwalifikatorów przejścia.
-
transitionType
Przyczyna nawigacji.
-
URL
ciąg znaków
-
-
-
filtry
obiekt opcjonalny
-
URL
Warunki, które musi spełniać otwierany adres URL. Schematy i „porty” Pola UrlFilter są ignorowane w przypadku tego zdarzenia.
-
onReferenceFragmentUpdated
chrome.webNavigation.onReferenceFragmentUpdated.addListener(
callback: function,
filters?: object,
)
Uruchamiane po zaktualizowaniu fragmentu referencyjnego ramki. Wszystkie przyszłe zdarzenia dotyczące tej ramki będą używać zaktualizowanego adresu URL.
Parametry
-
wywołanie zwrotne
funkcja
Parametr
callback
wygląda tak:(details: object) => void
-
szczegóły
Obiekt
-
documentId
ciąg znaków
Chrome 106 lub nowszy .Identyfikator UUID wczytanego dokumentu.
-
documentLifecycleChrome 106 lub nowszy .
Cykl życia dokumentu.
-
frameId
liczba
0 oznacza, że nawigacja odbywa się w oknie zawartości karty. wartość dodatnia wskazuje nawigację w ramce podrzędnej. Identyfikatory ramek są unikalne w obrębie danej karty.
-
frameTypeChrome 106 lub nowszy .
Typ ramki, w której wystąpiła nawigacja.
-
parentDocumentId
ciąg znaków opcjonalny
Chrome 106 lub nowszy .Identyfikator UUID dokumentu nadrzędnego, w którym znajduje się ta ramka. Ta wartość nie jest ustawiona, jeśli nie ma elementu nadrzędnego.
-
parentFrameId
liczba
Chrome w wersji 74 lub nowszej .Identyfikator ramki nadrzędnej lub
-1
, jeśli jest to ramka główna. -
processId
liczba
Identyfikator procesu, który uruchamia mechanizm renderowania danej ramki.
-
tabId
liczba
Identyfikator karty, na której odbywa się nawigacja.
-
timeStamp
liczba
Czas zatwierdzenia nawigacji (w milisekundach od początku epoki).
-
transitionQualifiers
Lista kwalifikatorów przejścia.
-
transitionType
Przyczyna nawigacji.
-
URL
ciąg znaków
-
-
-
filtry
obiekt opcjonalny
-
URL
Warunki, które musi spełniać otwierany adres URL. Schematy i „porty” Pola UrlFilter są ignorowane w przypadku tego zdarzenia.
-
onTabReplaced
chrome.webNavigation.onTabReplaced.addListener(
callback: function,
)
Uruchamiane, gdy zawartość karty zostanie zastąpiona inną (zwykle wyrenderowaną wcześniej) kartą.
Parametry
-
wywołanie zwrotne
funkcja
Parametr
callback
wygląda tak:(details: object) => void
-
szczegóły
Obiekt
-
replacedTabId
liczba
Identyfikator zastąpionej karty.
-
tabId
liczba
Identyfikator karty, która zastąpiła starą.
-
timeStamp
liczba
Czas przeprowadzenia wymiany (w milisekundach od początku epoki).
-
-