browser.bookmarks

Beschrijving

Gebruik de chrome.bookmarks API om bookmarks te maken, te ordenen en op andere manieren te bewerken. Bekijk ook Overschrijvingspagina's, waarmee je een aangepaste pagina voor de bookmarkmanager kunt maken.

Als je op de ster klikt, wordt er een bookmark toegevoegd
Als je op de ster klikt, wordt er een bookmark toegevoegd.

Rechten

bookmarks

Je moet het recht 'bookmarks' definiëren in het extensiemanifest om de bookmarks-API te gebruiken. Voorbeeld:

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

Concepten en gebruik

Objecten en eigenschappen

Bookmarks zijn geordend in een boomstructuur, waarbij elk knooppunt in de boomstructuur een bookmark of een map is (soms een groep genoemd). Elke node in de boom wordt vertegenwoordigd door een bookmarks.BookmarkTreeNode-object.

BookmarkTreeNode-property's worden gebruikt in de browser.bookmarks API. Als je bijvoorbeeld bookmarks.create aanroept, geef je de bovenliggende node van de nieuwe node (parentId) door en optioneel de eigenschappen index, title en url van de node. Ga naar bookmarks.BookmarkTreeNode voor informatie over de property's die een knooppunt kan hebben.

Voorbeelden

Met de volgende code maak je een map met de titel 'Extensiebookmarks'. Het eerste argument voor create() geeft de eigenschappen voor de nieuwe map aan. Het tweede argument definieert een functie die moet worden uitgevoerd nadat de map is gemaakt.

browser.bookmarks.create(
  {'parentId': bookmarkBar.id, 'title': 'Extension bookmarks'},
  function(newFolder) {
    console.log("added folder: " + newFolder.title);
  },
);

Het volgende fragment maakt een bookmark die verwijst naar de documentatie voor ontwikkelaars voor extensies. Omdat er niets ergs gebeurt als het maken van de bookmark mislukt, hoeft deze code geen callbackfunctie te definiëren.

browser.bookmarks.create({
  'parentId': extensionsFolderId,
  'title': 'Extensions doc',
  'url': 'https://developer.chrome.com/docs/extensions',
});

Als je deze API wilt proberen, installeer je het voorbeeld van de Bookmarks API uit de repository chrome-extension-samples.

Typen

BookmarkTreeNode

Een node (een bookmark of een map) in de bookmarkstructuur. Onderliggende nodes worden geordend in de bovenliggende map.

Eigenschappen

  • kinderen

    BookmarkTreeNode[] optioneel

    Een geordende lijst met onderliggende nodes van deze node.

  • dateAdded

    number optioneel

    Wanneer deze node is gemaakt, in milliseconden sinds het tijdvak (new Date(dateAdded)).

  • dateGroupModified

    number optioneel

    Wanneer de content van deze map voor het laatst is gewijzigd, in milliseconden sinds het tijdperk.

  • dateLastUsed

    number optioneel

    Chrome 114 of hoger browser.* sinds Chrome 148

    Wanneer deze node voor het laatst is geopend, in milliseconden sinds het tijdperk. Niet ingesteld voor mappen.

  • folderType

    FolderType optioneel

    Chrome 134+ browser.* sinds Chrome 148

    Als deze aanwezig is, is dit een map die is toegevoegd door de browser en die niet kan worden gewijzigd door de gebruiker of de extensie. Onderliggende nodes kunnen worden aangepast als deze node de property unmodifiable niet heeft ingesteld. Weggelaten als de node kan worden aangepast door de gebruiker en de extensie (standaard).

    Er kunnen nul, een of meerdere nodes van elk maptype zijn. Een map kan worden toegevoegd of verwijderd door de browser, maar niet via de API voor extensies.

  • id

    tekenreeks

    De unieke ID van de node. ID's zijn uniek binnen het huidige profiel en blijven geldig, zelfs nadat de browser opnieuw is opgestart.

  • index

    number optioneel

    De op 0 gebaseerde positie van deze node in de bovenliggende map.

  • parentId

    tekenreeks optioneel

    De id van de bovenliggende map. Weggelaten voor de rootnode.

  • synchroniseren

    booleaans

    Chrome 134+ browser.* sinds Chrome 148

    Of deze node door de browser wordt gesynchroniseerd met de externe accountopslag van de gebruiker. Dit kan worden gebruikt om onderscheid te maken tussen accountversies en lokale versies van dezelfde FolderType. De waarde van deze property kan veranderen voor een bestaande node, bijvoorbeeld als gevolg van een gebruikersactie.

    Opmerking: Dit geeft aan of de node is opgeslagen bij de ingebouwde accountprovider van de browser. Het is mogelijk dat een node wordt gesynchroniseerd via een derde, zelfs als deze waarde onwaar is.

    Voor beheerde nodes (nodes waarvoor unmodifiable is ingesteld op true) is deze property altijd false.

  • titel

    tekenreeks

    De tekst die voor de node wordt getoond.

  • niet aanpasbaar

    "managed"
     optioneel

    Geeft de reden aan waarom deze node niet kan worden gewijzigd. De waarde managed geeft aan dat deze node is ingesteld door de systeembeheerder of door de voogd van een gebruiker onder toezicht. Weggelaten als de node kan worden aangepast door de gebruiker en de extensie (standaard).

  • url

    tekenreeks optioneel

    De URL waarnaar wordt genavigeerd als een gebruiker op de bookmark klikt. Weggelaten voor mappen.

BookmarkTreeNodeUnmodifiable

Chrome 44+ browser.* sinds Chrome 148

Geeft de reden aan waarom deze node niet kan worden gewijzigd. De waarde managed geeft aan dat deze node is ingesteld door de systeembeheerder. Weggelaten als de node kan worden aangepast door de gebruiker en de extensie (standaard).

Waarde

"managed"

CreateDetails

Object dat is doorgegeven aan de functie create().

Eigenschappen

  • index

    number optioneel

  • parentId

    tekenreeks optioneel

    Standaard wordt de map Andere bookmarks ingesteld.

  • titel

    tekenreeks optioneel

  • url

    tekenreeks optioneel

FolderType

Chrome 134+ browser.* sinds Chrome 148

Geeft het type map aan.

Enum

bookmarks-bar
De map waarvan de content bovenaan het browservenster wordt getoond.

"other"
Bookmarks die worden getoond in de volledige lijst met bookmarks op alle platforms.

"mobile"
Bookmarks die algemeen beschikbaar zijn op de mobiele apparaten van de gebruiker, maar die kunnen worden aangepast via een extensie of in de bookmarkmanager.

"managed"
Een map op het hoogste niveau die aanwezig kan zijn als de systeembeheerder of de voogd van een gebruiker onder toezicht bookmarks heeft ingesteld.

Eigenschappen

MAX_SUSTAINED_WRITE_OPERATIONS_PER_MINUTE

Beëindigd

Schrijfbewerkingen voor bookmarks worden niet meer beperkt door Chrome.

Waarde

1000000

MAX_WRITE_OPERATIONS_PER_HOUR

Beëindigd

Schrijfbewerkingen voor bookmarks worden niet meer beperkt door Chrome.

Waarde

1000000

ROOT_NODE_ID

Chrome 145+ browser.* sinds Chrome 148

De id die is gekoppeld aan de root-level node.

Waarde

0

Methoden

create()

browser.bookmarks.create(
  bookmark: CreateDetails,
)
: Promise<BookmarkTreeNode>

Maakt een bookmark of map onder de opgegeven parentId. Als de URL NULL is of ontbreekt, is het een map.

Parameters

Retourzendingen

get()

browser.bookmarks.get(
  idOrIdList: string | [string, ...string[]],
)
: Promise<BookmarkTreeNode[]>

Haalt de opgegeven BookmarkTreeNode(s) op.

Parameters

  • idOrIdList

    string | [string, ...string[]]

    Eén ID met tekenreekswaarde of een matrix met ID's met tekenreekswaarde

Retourzendingen

getChildren()

browser.bookmarks.getChildren(
  id: string,
)
: Promise<BookmarkTreeNode[]>

Haalt de onderliggende items van de opgegeven BookmarkTreeNode-ID op.

Parameters

  • id

    tekenreeks

Retourzendingen

getRecent()

browser.bookmarks.getRecent(
  numberOfItems: number,
)
: Promise<BookmarkTreeNode[]>

Haalt de onlangs toegevoegde bookmarks op.

Parameters

  • numberOfItems

    getal

    Het maximale aantal items dat moet worden geretourneerd.

Retourzendingen

getSubTree()

browser.bookmarks.getSubTree(
  id: string,
)
: Promise<BookmarkTreeNode[]>

Haalt een deel van de hiërarchie van de bookmarks op, te beginnen bij de opgegeven node.

Parameters

  • id

    tekenreeks

    De ID van de root van de subboom die moet worden opgehaald.

Retourzendingen

getTree()

browser.bookmarks.getTree(): Promise<BookmarkTreeNode[]>

Haalt de hele hiërarchie van bookmarks op.

Retourzendingen

move()

browser.bookmarks.move(
  id: string,
  destination: object,
)
: Promise<BookmarkTreeNode>

Verplaatst de opgegeven BookmarkTreeNode naar de aangegeven locatie.

Parameters

  • id

    tekenreeks

  • bestemming

    object

    • index

      number optioneel

    • parentId

      tekenreeks optioneel

Retourzendingen

remove()

browser.bookmarks.remove(
  id: string,
)
: Promise<void>

Verwijdert een bookmark of een lege bookmarkmap.

Parameters

  • id

    tekenreeks

Retourzendingen

  • Promise<void>

    Chrome 90 of hoger browser.* sinds Chrome 148

removeTree()

browser.bookmarks.removeTree(
  id: string,
)
: Promise<void>

Verwijdert een bookmarkmap recursief.

Parameters

  • id

    tekenreeks

Retourzendingen

  • Promise<void>

    Chrome 90 of hoger browser.* sinds Chrome 148
browser.bookmarks.search(
  query: string | object,
)
: Promise<BookmarkTreeNode[]>

Zoekt naar BookmarkTreeNodes die overeenkomen met de ingevoerde query. Query's die zijn gespecificeerd met een object, produceren BookmarkTreeNodes die overeenkomen met alle gespecificeerde eigenschappen.

Parameters

  • query

    tekenreeks | object

    Een tekenreeks met woorden en geciteerde woordgroepen die worden vergeleken met URL's en titels van bookmarks, of een object. Als het een object is, kunnen de property's query, url en title worden opgegeven en worden bookmarks gemaakt die overeenkomen met alle opgegeven property's.

    • query

      tekenreeks optioneel

      Een reeks woorden en geciteerde woordgroepen die worden vergeleken met URL's en titels van bookmarks.

    • titel

      tekenreeks optioneel

      De titel van de bookmark, komt letterlijk overeen.

    • url

      tekenreeks optioneel

      De URL van de bookmark. Deze moet letterlijk overeenkomen. Mappen hebben geen URL.

Retourzendingen

update()

browser.bookmarks.update(
  id: string,
  changes: object,
)
: Promise<BookmarkTreeNode>

Updatet de eigenschappen van een bookmark of map. Voer alleen de eigenschappen in die je wilt wijzigen. Niet-ingevoerde eigenschappen blijven ongewijzigd. Opmerking: Op dit moment worden alleen 'title' en 'url' ondersteund.

Parameters

  • id

    tekenreeks

  • veranderingen

    object

    • titel

      tekenreeks optioneel

    • url

      tekenreeks optioneel

Retourzendingen

Evenementen

onChanged

browser.bookmarks.onChanged.addListener(
  callback: function,
)

Wordt geactiveerd als een bookmark of map wordt gewijzigd. Opmerking: Op dit moment wordt dit alleen geactiveerd door wijzigingen in de titel en URL.

Parameters

  • callback

    functie

    De parameter callback ziet er zo uit:

    (id: string, changeInfo: object) => void

    • id

      tekenreeks

    • changeInfo

      object

      • titel

        tekenreeks

      • url

        tekenreeks optioneel

onChildrenReordered

browser.bookmarks.onChildrenReordered.addListener(
  callback: function,
)

Wordt geactiveerd als de volgorde van de onderliggende items van een map is gewijzigd omdat de volgorde is gesorteerd in de UI. Dit wordt niet aangeroepen als resultaat van een move().

Parameters

  • callback

    functie

    De parameter callback ziet er zo uit:

    (id: string, reorderInfo: object) => void

    • id

      tekenreeks

    • reorderInfo

      object

      • childIds

        tekenreeks[]

onCreated

browser.bookmarks.onCreated.addListener(
  callback: function,
)

Wordt geactiveerd als een bookmark of map wordt gemaakt.

Parameters

onImportBegan

browser.bookmarks.onImportBegan.addListener(
  callback: function,
)

Wordt geactiveerd als een sessie voor het importeren van bookmarks wordt gestart. Dure observers moeten onCreated-updates negeren totdat onImportEnded wordt geactiveerd. Waarnemers moeten andere meldingen nog steeds onmiddellijk afhandelen.

Parameters

  • callback

    functie

    De parameter callback ziet er zo uit:

    () => void

onImportEnded

browser.bookmarks.onImportEnded.addListener(
  callback: function,
)

Wordt geactiveerd als een sessie voor het importeren van bookmarks wordt beëindigd.

Parameters

  • callback

    functie

    De parameter callback ziet er zo uit:

    () => void

onMoved

browser.bookmarks.onMoved.addListener(
  callback: function,
)

Wordt geactiveerd als een bookmark of map naar een andere bovenliggende map wordt verplaatst.

Parameters

  • callback

    functie

    De parameter callback ziet er zo uit:

    (id: string, moveInfo: object) => void

    • id

      tekenreeks

    • moveInfo

      object

      • index

        getal

      • oldIndex

        getal

      • oldParentId

        tekenreeks

      • parentId

        tekenreeks

onRemoved

browser.bookmarks.onRemoved.addListener(
  callback: function,
)

Wordt geactiveerd als een bookmark of map wordt verwijderd. Als een map recursief wordt verwijderd, wordt er één melding geactiveerd voor de map en geen voor de inhoud.

Parameters

  • callback

    functie

    De parameter callback ziet er zo uit:

    (id: string, removeInfo: object) => void

    • id

      tekenreeks

    • removeInfo

      object

      • index

        getal

      • Chrome 48+ browser.* sinds Chrome 148
      • parentId

        tekenreeks