vernieuwingsdatum: 2026-09-25 robots: noindex
Beschrijving
Gebruik de chrome.history API om te communiceren met de browsergeschiedenis van bezochte pagina's. Je kunt URL's toevoegen, verwijderen en opvragen in de geschiedenis van de browser. Zie Pagina's overschrijven om de geschiedenispagina te overschrijven met je eigen versie.
Rechten
historyManifest
Je moet het recht 'history' definiëren in het extensiemanifest om de History API te gebruiken. Voorbeeld:
{
"name": "My extension",
...
"permissions": [
"history"
],
...
}
Overgangstypen
De History API gebruikt een overgangstype om te beschrijven hoe de browser tijdens een bepaald bezoek naar een specifieke URL is genavigeerd. Als een gebruiker bijvoorbeeld een pagina bezoekt door op een link op een andere pagina te klikken, is het overgangstype link.
In de volgende tabel staat een beschrijving van elk overgangstype.
| Overgangstype | Beschrijving |
|---|---|
| "link" | De gebruiker is op deze pagina terechtgekomen door op een link op een andere pagina te klikken. |
| "typed" | De gebruiker is op deze pagina terechtgekomen door de URL in de adresbalk te typen. Wordt ook gebruikt voor andere expliciete navigatieacties. Zie ook generated, dat wordt gebruikt voor gevallen waarin de gebruiker een keuze heeft geselecteerd die helemaal niet op een URL leek. |
| "auto_bookmark" | De gebruiker is op deze pagina terechtgekomen via een suggestie in de UI, bijvoorbeeld via een menu-item. |
| "auto_subframe" | Subframe-navigatie. Dit is content die automatisch wordt geladen in een frame dat niet op het hoogste niveau staat. Als een pagina bijvoorbeeld uit meerdere frames met advertenties bestaat, hebben die advertentie-URL's dit overgangstype. De gebruiker merkt misschien niet eens dat de content op deze pagina's een afzonderlijk frame is en geeft dus misschien niet om de URL (zie ook manual_subframe). |
| "manual_subframe" | Voor subframe-navigaties die expliciet door de gebruiker worden aangevraagd en nieuwe navigatie-items genereren in de lijst Terug/Vooruit. Een expliciet aangevraagd frame is waarschijnlijk belangrijker dan een automatisch geladen frame, omdat de gebruiker het waarschijnlijk belangrijk vindt dat het aangevraagde frame is geladen. |
| "generated" | De gebruiker is op deze pagina terechtgekomen door in de adresbalk te typen en een item te selecteren dat niet op een URL lijkt. Een overeenkomst kan bijvoorbeeld de URL van een Google-zoekresultatenpagina hebben, maar voor de gebruiker verschijnen als 'Zoeken op Google naar ...'. Deze zijn niet helemaal hetzelfde als getypte navigaties, omdat de gebruiker de bestemmings-URL niet heeft getypt of gezien. Zie ook zoekwoord. |
| "auto_toplevel" | De pagina is opgegeven op de opdrachtregel of is de startpagina. |
| "form_submit" | De gebruiker heeft waarden in een formulier ingevuld en het formulier ingediend. In sommige situaties, bijvoorbeeld als een formulier een script gebruikt om content in te dienen, leidt het indienen van een formulier niet tot dit overgangstype. |
| "reload" | De gebruiker heeft de pagina opnieuw geladen door op de knop Opnieuw laden te klikken of door op Enter te drukken in de adresbalk. Sessie herstellen en Gesloten tabblad opnieuw openen gebruiken dit overgangstype ook. |
| "zoekwoord" | De URL is gemaakt op basis van een vervangbaar zoekwoord dat niet de standaard zoekprovider is. Zie ook keyword_generated. |
| "keyword_generated" | Komt overeen met een bezoek dat voor een zoekwoord is gegenereerd. Zie ook zoekwoord. |
Voorbeelden
Als je deze API wilt proberen, installeer je het voorbeeld van de History API uit de repository chrome-extension-samples.
Typen
HistoryItem
Een object dat één resultaat van een geschiedenisquery omvat.
Eigenschappen
-
id
tekenreeks
De unieke ID van het item.
-
lastVisitTime
nummer optioneel
Wanneer deze pagina voor het laatst is geladen, aangegeven in milliseconden sinds het tijdvak.
-
titel
tekenreeks optioneel
De titel van de pagina toen deze voor het laatst werd geladen.
-
typedCount
number optioneel
Het aantal keren dat de gebruiker naar deze pagina is gegaan door het adres in te typen.
-
url
tekenreeks optioneel
De URL waarnaar een gebruiker navigeert.
-
visitCount
number optioneel
Het aantal keren dat de gebruiker naar deze pagina is genavigeerd.
Enum
link
De gebruiker is op deze pagina terechtgekomen door op een link op een andere pagina te klikken.
"typed"
De gebruiker is op deze pagina terechtgekomen door de URL in de adresbalk te typen. Dit wordt ook gebruikt voor andere expliciete navigatieacties.
"auto_bookmark"
De gebruiker is op deze pagina terechtgekomen via een suggestie in de UI, bijvoorbeeld via een menu-item.
"auto_subframe"
De gebruiker is op deze pagina terechtgekomen via subframe-navigatie die de gebruiker niet heeft aangevraagd, bijvoorbeeld via een advertentie die in een frame op de vorige pagina wordt geladen. Deze genereren niet altijd nieuwe navigatie-items in de menu's Terug en Vooruit.
manual_subframe
De gebruiker is op deze pagina terechtgekomen door iets in een subframe te selecteren.
"generated"
De gebruiker is op deze pagina terechtgekomen door in de adresbalk te typen en een item te selecteren dat niet op een URL leek, zoals een Google Zoeken-zoeksuggestie. Een overeenkomst kan bijvoorbeeld de URL van een Google-zoekresultatenpagina hebben, maar voor de gebruiker worden getoond als 'Zoek op Google naar ...'. Deze verschillen van getypte navigaties, omdat de gebruiker de bestemmings-URL niet heeft getypt of gezien. Ze zijn ook gerelateerd aan zoekwoordnavigaties.
'auto_toplevel'
De pagina is opgegeven op de opdrachtregel of is de startpagina.
form_submit
De gebruiker is op deze pagina terechtgekomen door waarden in een formulier in te vullen en het formulier in te dienen. Niet alle formulierinzendingen gebruiken dit overgangstype.
'reload'
De gebruiker heeft de pagina opnieuw geladen door op de knop voor opnieuw laden te klikken of door op Enter te drukken in de adresbalk. Sessieherstel en Gesloten tabblad opnieuw openen gebruiken dit overgangstype ook.
"keyword"
De URL voor deze pagina is gegenereerd op basis van een vervangbaar zoekwoord dat niet de standaard zoekprovider is.
keyword_generated
Komt overeen met een bezoek dat is gegenereerd voor een zoekwoord.
UrlDetails
Eigenschappen
-
url
tekenreeks
De URL voor de bewerking. De indeling moet overeenkomen met de indeling die wordt geretourneerd door een aanroep van
history.search().
VisitItem
Een object dat één bezoek aan een URL inkapselt.
Eigenschappen
-
id
tekenreeks
De unieke ID voor de bijbehorende
history.HistoryItem. -
isLocal
booleaans
Chrome 115+Waar als het bezoek is gestart op dit apparaat. Onwaar als het is gesynchroniseerd vanaf een ander apparaat.
-
referringVisitId
tekenreeks
De bezoek-ID van de verwijzer.
-
overgang
Het overgangstype voor dit bezoek van de verwijzer.
-
visitId
tekenreeks
De unieke ID voor dit bezoek.
-
visitTime
number optioneel
Het tijdstip waarop dit bezoek heeft plaatsgevonden, in milliseconden sinds het tijdvak.
Methoden
addUrl()
chrome.history.addUrl(
details: UrlDetails,
callback?: function,
): Promise<void>
Voegt een URL toe aan de geschiedenis op de huidige tijd met het overgangstype link.
Parameters
-
details
-
callback
functie optioneel
De parameter
callbackziet er zo uit:() => void
Retourzendingen
-
Promise<void>
Chrome 96+Promises worden alleen ondersteund voor Manifest V3 en hoger. Andere platforms moeten callbacks gebruiken.
deleteAll()
chrome.history.deleteAll(
callback?: function,
): Promise<void>
Hiermee worden alle items uit de geschiedenis verwijderd.
Parameters
-
callback
functie optioneel
De parameter
callbackziet er zo uit:() => void
Retourzendingen
-
Promise<void>
Chrome 96+Promises worden alleen ondersteund voor Manifest V3 en hoger. Andere platforms moeten callbacks gebruiken.
deleteRange()
chrome.history.deleteRange(
range: object,
callback?: function,
): Promise<void>
Verwijdert alle items binnen de aangegeven periode uit de geschiedenis. Pagina's worden niet uit de geschiedenis verwijderd, tenzij alle bezoeken binnen het bereik vallen.
Parameters
-
bereik
object
-
endTime
getal
Items die vóór deze datum aan de geschiedenis zijn toegevoegd, weergegeven in milliseconden sinds de epoch.
-
startTime
getal
Items die na deze datum aan de geschiedenis zijn toegevoegd, weergegeven in milliseconden sinds het tijdperk.
-
-
callback
functie optioneel
De parameter
callbackziet er zo uit:() => void
Retourzendingen
-
Promise<void>
Chrome 96+Promises worden alleen ondersteund voor Manifest V3 en hoger. Andere platforms moeten callbacks gebruiken.
deleteUrl()
chrome.history.deleteUrl(
details: UrlDetails,
callback?: function,
): Promise<void>
Verwijdert alle instanties van de opgegeven URL uit de geschiedenis.
Parameters
-
details
-
callback
functie optioneel
De parameter
callbackziet er zo uit:() => void
Retourzendingen
-
Promise<void>
Chrome 96+Promises worden alleen ondersteund voor Manifest V3 en hoger. Andere platforms moeten callbacks gebruiken.
getVisits()
chrome.history.getVisits(
details: UrlDetails,
callback?: function,
): Promise<VisitItem[]>
Haalt informatie op over bezoeken aan een URL.
Parameters
-
details
-
callback
functie optioneel
De parameter
callbackziet er zo uit:(results: VisitItem[]) => void
-
resultaten
-
Retourzendingen
-
Promise<VisitItem[]>
Chrome 96+Promises worden alleen ondersteund voor Manifest V3 en hoger. Andere platforms moeten callbacks gebruiken.
search()
chrome.history.search(
query: object,
callback?: function,
): Promise<HistoryItem[]>
Zoekt in de geschiedenis naar de tijd van het laatste bezoek aan elke pagina die overeenkomt met de zoekopdracht.
Parameters
-
query
object
-
endTime
number optioneel
Beperk de resultaten tot de resultaten die vóór deze datum zijn bezocht, weergegeven in milliseconden sinds het tijdperk.
-
maxResults
nummer optioneel
Het maximale aantal op te halen resultaten. De standaardinstelling is 100.
-
startTime
nummer optioneel
Beperk de resultaten tot de resultaten die na deze datum zijn bezocht, weergegeven in milliseconden sinds het tijdvak. Als de property niet is opgegeven, is de standaardwaarde 24 uur.
-
tekst
tekenreeks
Een zoekopdracht in vrije tekst voor de geschiedenisservice. Laat dit veld leeg om alle pagina's op te halen.
-
-
callback
functie optioneel
De parameter
callbackziet er zo uit:(results: HistoryItem[]) => void
-
resultaten
-
Retourzendingen
-
Promise<HistoryItem[]>
Chrome 96+Promises worden alleen ondersteund voor Manifest V3 en hoger. Andere platforms moeten callbacks gebruiken.
Evenementen
onVisited
chrome.history.onVisited.addListener(
callback: function,
)
Wordt geactiveerd als een URL wordt bezocht en levert de HistoryItem-gegevens voor die URL. Deze gebeurtenis wordt geactiveerd voordat de pagina is geladen.
Parameters
-
callback
functie
De parameter
callbackziet er zo uit:(result: HistoryItem) => void
-
resultaat
-
onVisitRemoved
chrome.history.onVisitRemoved.addListener(
callback: function,
)
Wordt geactiveerd als een of meer URL's uit de geschiedenis worden verwijderd. Als alle bezoeken zijn verwijderd, wordt de URL uit de geschiedenis verwijderd.
Parameters
-
callback
functie
De parameter
callbackziet er zo uit:(removed: object) => void
-
verwijderd
object
-
allHistory
booleaans
Waar als de hele geschiedenis is verwijderd. Als dit waar is, zijn de URL's leeg.
-
URL’s
string[] optioneel
-
-