Durch diese Berechtigung wird eine Warnung ausgelöst.
Beschreibung
Mit der chrome.bookmarks
API können Sie Lesezeichen erstellen, organisieren und anderweitig bearbeiten. Mit Seiten überschreiben können Sie auch eine benutzerdefinierte Seite im Lesezeichenmanager erstellen.
Berechtigungen
bookmarks
Manifest
Sie müssen die Lesezeichen deklarieren im Erweiterungsmanifest, um die Lesezeichen-API zu verwenden. Beispiel:
{
"name": "My extension",
...
"permissions": [
"bookmarks"
],
...
}
Objekte und Eigenschaften
Lesezeichen sind in einer Baumstruktur organisiert, wobei jeder Knoten in der Baumstruktur entweder ein Lesezeichen oder ein Ordner ist (manchmal auch als Gruppe bezeichnet). Jeder Knoten in der Baumstruktur wird durch ein bookmarks.BookmarkTreeNode-Objekt.
BookmarkTreeNode
-Attribute werden in der gesamten chrome.bookmarks
API verwendet. Wenn Sie zum Beispiel
bookmarks.create aufrufen, übergeben Sie das übergeordnete Element des neuen Knotens (parentId
) und optional den
index
, title
und url
des Knotens. Weitere Informationen finden Sie unter bookmarks.BookmarkTreeNode.
welche Eigenschaften ein Knoten haben kann.
Beispiele
Mit dem folgenden Code wird ein Ordner mit dem Titel „Erweiterungslesezeichen“ erstellt. Das erste Argument für
create()
gibt Attribute für den neuen Ordner an. Das zweite Argument definiert eine Funktion,
nach dem Erstellen des Ordners ausgeführt wird.
chrome.bookmarks.create(
{'parentId': bookmarkBar.id, 'title': 'Extension bookmarks'},
function(newFolder) {
console.log("added folder: " + newFolder.title);
},
);
Mit dem nächsten Snippet wird ein Lesezeichen erstellt, das auf die Entwicklerdokumentation für Erweiterungen verweist. Seit Wenn das Erstellen des Lesezeichens fehlschlägt, geschieht mit diesem Code nichts. Callback-Funktion verwendet werden.
chrome.bookmarks.create({
'parentId': extensionsFolderId,
'title': 'Extensions doc',
'url': 'https://developer.chrome.com/docs/extensions',
});
Wenn Sie diese API ausprobieren möchten, installieren Sie das Lesezeichen API-Beispiel aus chrome-extension-samples zu erstellen.
Typen
BookmarkTreeNode
Ein Knoten (entweder ein Lesezeichen oder ein Ordner) in der Lesezeichenstruktur. Untergeordnete Knoten werden in ihrem übergeordneten Ordner angeordnet.
Attribute
-
Kinder
BookmarkTreeNode[] optional
Eine geordnete Liste von untergeordneten Elementen dieses Knotens.
-
dateAdded
Zahl optional
Zeitpunkt, zu dem dieser Knoten erstellt wurde, in Millisekunden seit der Epoche (
new Date(dateAdded)
). -
dateGroupModified
Zahl optional
Wann der Inhalt dieses Ordners zuletzt geändert wurde, in Millisekunden seit der Epoche.
-
dateLastUsed
Zahl optional
Chrome 114 und höherZeitpunkt, zu dem dieser Knoten zuletzt geöffnet wurde, in Millisekunden seit der Epoche. Nicht für Ordner konfiguriert.
-
id
String
Die eindeutige Kennung für den Knoten. IDs sind innerhalb des aktuellen Profils eindeutig und bleiben auch nach einem Neustart des Browsers gültig.
-
Index
Zahl optional
Die 0-basierte Position dieses Knotens im übergeordneten Ordner.
-
parentId
String optional
Die
id
des übergeordneten Ordners. Für den Root-Knoten weggelassen. -
Titel
String
Der für den Knoten angezeigte Text.
-
nicht änderbar
„verwaltet“
optionalGibt den Grund an, warum dieser Knoten nicht geändert werden kann. Der Wert
managed
gibt an, dass dieser Knoten vom Systemadministrator oder vom Verwalter eines betreuten Nutzers konfiguriert wurde. Wird weggelassen, wenn der Knoten vom Nutzer und der Erweiterung geändert werden kann (Standardeinstellung). -
URL
String optional
Die URL, zu der navigiert wurde, wenn ein Nutzer auf das Lesezeichen klickt. Für Ordner weggelassen.
BookmarkTreeNodeUnmodifiable
Gibt den Grund an, warum dieser Knoten nicht geändert werden kann. Der Wert managed
gibt an, dass dieser Knoten vom Systemadministrator konfiguriert wurde. Wird weggelassen, wenn der Knoten vom Nutzer und der Erweiterung geändert werden kann (Standardeinstellung).
Wert
„verwaltet“
CreateDetails
Objekt, das an die Funktion create() übergeben wurde.
Attribute
-
Index
Zahl optional
-
parentId
String optional
Die Standardeinstellung ist der Ordner „Weitere Lesezeichen“.
-
Titel
String optional
-
URL
String optional
Attribute
MAX_SUSTAINED_WRITE_OPERATIONS_PER_MINUTE
Schreibvorgänge für Lesezeichen werden nicht mehr durch Chrome eingeschränkt.
Wert
1.000.000
MAX_WRITE_OPERATIONS_PER_HOUR
Schreibvorgänge für Lesezeichen werden nicht mehr durch Chrome eingeschränkt.
Wert
1.000.000
Methoden
create()
chrome.bookmarks.create(
bookmark: CreateDetails,
callback?: function,
)
Erstellt ein Lesezeichen oder einen Ordner unter der angegebenen "parentId". Wenn die URL NULL ist oder fehlt, handelt es sich um einen Ordner.
Parameter
-
Lesezeichen
-
callback
Funktion optional
Der Parameter
callback
sieht so aus:(result: BookmarkTreeNode) => void
-
Ergebnis
-
Gibt Folgendes zurück:
-
Promise<BookmarkTreeNode>
Chrome 90 und höherPromise-Objekte werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.
get()
chrome.bookmarks.get(
idOrIdList: string | [string, ...string[]],
callback?: function,
)
Ruft die angegebenen LesezeichenTreeNode(s) ab.
Parameter
-
idOrIdList
string | [Zeichenfolge, ...Zeichenfolge[]]
Eine einzelne ID mit einem Stringwert oder ein Array von IDs mit Stringwerten
-
callback
Funktion optional
Der Parameter
callback
sieht so aus:(results: BookmarkTreeNode[]) => void
-
Ergebnisse
-
Gibt Folgendes zurück:
-
Promise<BookmarkTreeNode[]>
Chrome 90 und höherPromise-Objekte werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.
getChildren()
chrome.bookmarks.getChildren(
id: string,
callback?: function,
)
Ruft die untergeordneten Elemente der angegebenen LesezeichenTreeNode-ID ab.
Parameter
-
id
String
-
callback
Funktion optional
Der Parameter
callback
sieht so aus:(results: BookmarkTreeNode[]) => void
-
Ergebnisse
-
Gibt Folgendes zurück:
-
Promise<BookmarkTreeNode[]>
Chrome 90 und höherPromise-Objekte werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.
getRecent()
chrome.bookmarks.getRecent(
numberOfItems: number,
callback?: function,
)
Ruft die kürzlich hinzugefügten Lesezeichen ab.
Parameter
-
numberOfItems
Zahl
Die maximale Anzahl der Elemente, die zurückzugeben sind.
-
callback
Funktion optional
Der Parameter
callback
sieht so aus:(results: BookmarkTreeNode[]) => void
-
Ergebnisse
-
Gibt Folgendes zurück:
-
Promise<BookmarkTreeNode[]>
Chrome 90 und höherPromise-Objekte werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.
getSubTree()
chrome.bookmarks.getSubTree(
id: string,
callback?: function,
)
Ruft einen Teil der Lesezeichenhierarchie ab dem angegebenen Knoten ab.
Parameter
-
id
String
Die ID des Stamms der abzurufenden Unterstruktur.
-
callback
Funktion optional
Der Parameter
callback
sieht so aus:(results: BookmarkTreeNode[]) => void
-
Ergebnisse
-
Gibt Folgendes zurück:
-
Promise<BookmarkTreeNode[]>
Chrome 90 und höherPromise-Objekte werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.
getTree()
chrome.bookmarks.getTree(
callback?: function,
)
Ruft die gesamte Lesezeichen-Hierarchie ab.
Parameter
-
callback
Funktion optional
Der Parameter
callback
sieht so aus:(results: BookmarkTreeNode[]) => void
-
Ergebnisse
-
Gibt Folgendes zurück:
-
Promise<BookmarkTreeNode[]>
Chrome 90 und höherPromise-Objekte werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.
move()
chrome.bookmarks.move(
id: string,
destination: object,
callback?: function,
)
Verschiebt den angegebenen LesezeichenTreeNode an den angegebenen Speicherort.
Parameter
-
id
String
-
Ziel
Objekt
-
Index
Zahl optional
-
parentId
String optional
-
-
callback
Funktion optional
Der Parameter
callback
sieht so aus:(result: BookmarkTreeNode) => void
-
Ergebnis
-
Gibt Folgendes zurück:
-
Promise<BookmarkTreeNode>
Chrome 90 und höherPromise-Objekte werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.
remove()
chrome.bookmarks.remove(
id: string,
callback?: function,
)
Entfernt ein Lesezeichen oder einen leeren Lesezeichenordner.
Parameter
-
id
String
-
callback
Funktion optional
Der Parameter
callback
sieht so aus:() => void
Gibt Folgendes zurück:
-
Versprechen<void>
Chrome 90 und höherPromise-Objekte werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.
removeTree()
chrome.bookmarks.removeTree(
id: string,
callback?: function,
)
Entfernt einen Lesezeichenordner rekursiv.
Parameter
-
id
String
-
callback
Funktion optional
Der Parameter
callback
sieht so aus:() => void
Gibt Folgendes zurück:
-
Versprechen<void>
Chrome 90 und höherPromise-Objekte werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.
search()
chrome.bookmarks.search(
query: string | object,
callback?: function,
)
Sucht nach LesezeichenTreeNodes, die der angegebenen Abfrage entsprechen. Abfragen, die mit einem -Objekt angegeben werden, erzeugen LesezeichenTreeNodes, die mit allen angegebenen Eigenschaften übereinstimmen.
Parameter
-
Abfrage
string | Objekt
Entweder eine Zeichenfolge aus Wörtern und Wortgruppen in Anführungszeichen, die mit Lesezeichen-URLs und -titeln abgeglichen werden, oder ein Objekt. Bei einem Objekt können die Eigenschaften
query
,url
undtitle
angegeben werden, und Lesezeichen, die mit allen angegebenen Eigenschaften übereinstimmen, werden erstellt.-
Abfrage
String optional
Ein String aus Wörtern und Wortgruppen in Anführungszeichen, die mit Lesezeichen-URLs und Titeln abgeglichen werden.
-
Titel
String optional
Der Titel des Lesezeichens Übereinstimmungen wörtlich.
-
URL
String optional
Die URL des Lesezeichens Übereinstimmungen wörtlich. Beachten Sie, dass Ordner keine URL haben.
-
-
callback
Funktion optional
Der Parameter
callback
sieht so aus:(results: BookmarkTreeNode[]) => void
-
Ergebnisse
-
Gibt Folgendes zurück:
-
Promise<BookmarkTreeNode[]>
Chrome 90 und höherPromise-Objekte werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.
update()
chrome.bookmarks.update(
id: string,
changes: object,
callback?: function,
)
Aktualisiert die Eigenschaften eines Lesezeichens oder Ordners. Geben Sie nur die Eigenschaften an, die Sie ändern möchten. nicht spezifizierte Eigenschaften bleiben unverändert. Hinweis:Derzeit ist nur „title“ verfügbar. und 'URL' unterstützt werden.
Parameter
-
id
String
-
Änderungen
Objekt
-
Titel
String optional
-
URL
String optional
-
-
callback
Funktion optional
Der Parameter
callback
sieht so aus:(result: BookmarkTreeNode) => void
-
Ergebnis
-
Gibt Folgendes zurück:
-
Promise<BookmarkTreeNode>
Chrome 90 und höherPromise-Objekte werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.
Ereignisse
onChanged
chrome.bookmarks.onChanged.addListener(
callback: function,
)
Wird ausgelöst, wenn sich ein Lesezeichen oder Ordner ändert Hinweis:Derzeit wird dieses Problem nur durch Änderungen des Titels und der URL ausgelöst.
Parameter
-
callback
Funktion
Der Parameter
callback
sieht so aus:(id: string, changeInfo: object) => void
-
id
String
-
changeInfo
Objekt
-
Titel
String
-
URL
String optional
-
-
onChildrenReordered
chrome.bookmarks.onChildrenReordered.addListener(
callback: function,
)
Wird ausgelöst, wenn die Reihenfolge der untergeordneten Ordner eines Ordners aufgrund der Sortierung in der Benutzeroberfläche geändert wurde Dies wird nicht als Ergebnis einer Move() aufgerufen.
Parameter
-
callback
Funktion
Der Parameter
callback
sieht so aus:(id: string, reorderInfo: object) => void
-
id
String
-
reorderInfo
Objekt
-
childIds
String[]
-
-
onCreated
chrome.bookmarks.onCreated.addListener(
callback: function,
)
Wird ausgelöst, wenn ein Lesezeichen oder ein Ordner erstellt wird
Parameter
-
callback
Funktion
Der Parameter
callback
sieht so aus:(id: string, bookmark: BookmarkTreeNode) => void
-
id
String
-
Lesezeichen
-
onImportBegan
chrome.bookmarks.onImportBegan.addListener(
callback: function,
)
Wird ausgelöst, wenn eine Lesezeichen-Importsitzung gestartet wird. Teure Beobachter sollten onCreated-Aktualisierungen ignorieren, bis onImportEnded ausgelöst wird. Andere Benachrichtigungen sollten weiterhin sofort bearbeitet werden.
Parameter
-
callback
Funktion
Der Parameter
callback
sieht so aus:() => void
onImportEnded
chrome.bookmarks.onImportEnded.addListener(
callback: function,
)
Wird ausgelöst, wenn ein Lesezeichenimport beendet wird.
Parameter
-
callback
Funktion
Der Parameter
callback
sieht so aus:() => void
onMoved
chrome.bookmarks.onMoved.addListener(
callback: function,
)
Wird ausgelöst, wenn ein Lesezeichen oder ein Ordner in einen anderen übergeordneten Ordner verschoben wird
Parameter
-
callback
Funktion
Der Parameter
callback
sieht so aus:(id: string, moveInfo: object) => void
-
id
String
-
moveInfo
Objekt
-
Index
Zahl
-
oldIndex
Zahl
-
oldParentId
String
-
parentId
String
-
-
onRemoved
chrome.bookmarks.onRemoved.addListener(
callback: function,
)
Wird ausgelöst, wenn ein Lesezeichen oder ein Ordner entfernt wird Wenn ein Ordner rekursiv entfernt wird, wird eine einzelne Benachrichtigung für den Ordner ausgelöst und keine für seinen Inhalt.
Parameter
-
callback
Funktion
Der Parameter
callback
sieht so aus:(id: string, removeInfo: object) => void
-
id
String
-
removeInfo
Objekt
-
Index
Zahl
-
KnotenChrome (ab Version 48)
-
parentId
String
-
-