refresh date: 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. Als je de geschiedenispagina wilt overschrijven met je eigen versie, ga je naar Pagina's overschrijven.
Rechten
historyManifest
Je moet het recht 'history' definiëren in het extensiemanifest om de geschiedenis-API te gebruiken. Voorbeeld:
{
"name": "My extension",
...
"permissions": [
"history"
],
...
}
Overgangstypen
De History API gebruikt een overgangstype om te beschrijven hoe de browser naar een bepaalde URL is genavigeerd tijdens een bepaald bezoek. 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 wordt elk overgangstype beschreven.
| Overgangstype | Beschrijving |
|---|---|
| "link" | De gebruiker is op deze pagina terechtgekomen door op een link op een andere pagina te klikken. |
| "typed" | De gebruiker heeft deze pagina geopend 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 beseft misschien niet eens dat de content op deze pagina's een afzonderlijk frame is en geeft 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 leek. Een overeenkomst kan bijvoorbeeld de URL van een Google-zoekresultatenpagina hebben, maar voor de gebruiker verschijnen als 'Zoeken op Google naar ...'. Dit is 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 ingevuld in een formulier en dit 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. |
| 'opnieuw laden' | 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 is gegenereerd voor een zoekwoord. 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 inkapselt.
Eigenschappen
-
id
tekenreeks
De unieke ID van het item.
-
lastVisitTime
number optioneel
Wanneer deze pagina voor het laatst is geladen, weergegeven in milliseconden sinds het tijdperk.
-
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 genavigeerd door het adres in te typen.
-
url
tekenreeks optioneel
De URL waarnaar een gebruiker is genavigeerd.
-
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 is 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 verschijnen als 'Google doorzoeken op ...'. 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 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 naar
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 de activiteit 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
Wanneer dit bezoek heeft plaatsgevonden, weergegeven in milliseconden sinds het tijdperk.
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 de periode vallen.
Parameters
-
bereik
object
-
endTime
getal
Items die vóór deze datum aan de geschiedenis zijn toegevoegd, weergegeven in milliseconden sinds het tijdperk.
-
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[]>
Hiermee wordt informatie over bezoeken aan een URL opgehaald.
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 laatste bezoektijd van 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
number optioneel
Het maximumaantal resultaten dat moet worden opgehaald. De standaardinstelling is 100.
-
startTime
number 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 met vrije tekst naar de geschiedenisservice. Laat dit 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
-
-