Descrizione
Utilizza l'API chrome.bookmarks
per creare, organizzare e gestire i preferiti. Consulta anche la sezione Override delle pagine, che puoi utilizzare per creare una pagina di Gestione preferiti personalizzata.
Autorizzazioni
bookmarks
Devi dichiarare i "preferiti" nel manifest dell'estensione per utilizzare l'API Preferred. Ad esempio:
{
"name": "My extension",
...
"permissions": [
"bookmarks"
],
...
}
Concetti e utilizzo
Oggetti e proprietà
I preferiti sono organizzati in una struttura ad albero, dove ogni nodo nell'albero è un preferito o una cartella (a volte chiamato gruppo). Ciascun nodo nell'albero è rappresentato da una bookmarks.BookmarkTreeNode.
Le proprietà BookmarkTreeNode
vengono utilizzate in tutta l'API chrome.bookmarks
. Ad esempio, quando
chiamare bookmarks.create, passi il nodo principale (parentId
) del nuovo nodo e, facoltativamente, il parametro
proprietà index
, title
e url
del nodo. Per informazioni, consulta bookmarks.BookmarkTreeNode
sulle proprietà che un nodo può avere.
Esempi
Il seguente codice crea una cartella con il titolo "Preferiti delle estensioni". Il primo argomento per
create()
specifica le proprietà della nuova cartella. Il secondo argomento definisce una funzione da utilizzare
eseguito dopo la creazione della cartella.
chrome.bookmarks.create(
{'parentId': bookmarkBar.id, 'title': 'Extension bookmarks'},
function(newFolder) {
console.log("added folder: " + newFolder.title);
},
);
Lo snippet successivo crea un preferito che rimanda alla documentazione per gli sviluppatori relativa alle estensioni. Dal giorno non accade niente di male se la creazione del segnalibro non riesce, questo codice non si preoccupa di definire un di chiamata.
chrome.bookmarks.create({
'parentId': extensionsFolderId,
'title': 'Extensions doc',
'url': 'https://developer.chrome.com/docs/extensions',
});
Per provare questa API, installa l'esempio dell'API Segnalibri da chrome-extension-samples repository Git.
Tipi
BookmarkTreeNode
Un nodo (un preferito o una cartella) nell'albero dei preferiti. I nodi figlio sono ordinati all'interno della relativa cartella principale.
Proprietà
-
bambini
BookmarkTreeNode[] facoltativo
Un elenco ordinato di elementi secondari di questo nodo.
-
dateAdded
numero facoltativo
Data di creazione del nodo, in millisecondi dall'epoca (
new Date(dateAdded)
). -
dateGroupModified
numero facoltativo
L'ultima modifica dei contenuti di questa cartella, in millisecondi dall'epoca.
-
dateLastUsed
numero facoltativo
Chrome 114 e versioni successive .L'ultima volta che questo nodo è stato aperto, in millisecondi dall'epoca. Non impostato per le cartelle.
-
id
stringa
L'identificatore univoco del nodo. Gli ID sono univoci all'interno del profilo corrente e rimangono validi anche dopo il riavvio del browser.
-
indice
numero facoltativo
La posizione in base 0 di questo nodo all'interno della relativa cartella principale.
-
parentId
stringa facoltativo
Il
id
della cartella principale. Omesso per il nodo principale. -
titolo
stringa
Il testo visualizzato per il nodo.
-
non modificabile
"managed"
facoltativoIndica il motivo per cui questo nodo non è modificabile. Il valore
managed
indica che il nodo è stato configurato dall'amministratore di sistema o dal custode di un utente supervisionato. Omesso se il nodo può essere modificato dall'utente e dall'estensione (impostazione predefinita). -
url
stringa facoltativo
L'URL raggiunto quando un utente fa clic sul preferito. Omesso per le cartelle.
BookmarkTreeNodeUnmodifiable
Indica il motivo per cui questo nodo non è modificabile. Il valore managed
indica che il nodo è stato configurato dall'amministratore di sistema. Omesso se il nodo può essere modificato dall'utente e dall'estensione (impostazione predefinita).
Valore
"gestito"
CreateDetails
Oggetto passato alla funzione create().
Proprietà
-
indice
numero facoltativo
-
parentId
stringa facoltativo
Per impostazione predefinita, è la cartella Altri preferiti.
-
titolo
stringa facoltativo
-
url
stringa facoltativo
Proprietà
MAX_SUSTAINED_WRITE_OPERATIONS_PER_MINUTE
Le operazioni di scrittura dei preferiti non sono più limitate da Chrome.
Valore
1000000
MAX_WRITE_OPERATIONS_PER_HOUR
Le operazioni di scrittura dei preferiti non sono più limitate da Chrome.
Valore
1000000
Metodi
create()
chrome.bookmarks.create(
bookmark: CreateDetails,
callback?: function,
)
Crea un preferito o una cartella sotto il parentId specificato. Se url è NULL o mancante, sarà una cartella.
Parametri
-
preferito
-
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:(result: BookmarkTreeNode) => void
-
risultato
-
Resi
-
Promise<BookmarkTreeNode>
Chrome 90 e versioni successive .Le promesse sono supportate in Manifest V3 e versioni successive, ma sono disponibili callback per la compatibilità con le versioni precedenti. Non puoi utilizzare entrambi nella stessa chiamata di funzione. La si risolve con lo stesso tipo passato al callback.
get()
chrome.bookmarks.get(
idOrIdList: string | [string, ...string[]],
callback?: function,
)
Recupera i BookmarkTreeNode specificati.
Parametri
-
idOrIdList
string | [stringa, ...stringa[]]
Un singolo ID con valori di stringa o un array di ID con valori di stringa
-
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:(results: BookmarkTreeNode[]) => void
-
risultati
-
Resi
-
Promise<BookmarkTreeNode[]>
Chrome 90 e versioni successive .Le promesse sono supportate in Manifest V3 e versioni successive, ma sono disponibili callback per la compatibilità con le versioni precedenti. Non puoi utilizzare entrambi nella stessa chiamata di funzione. La si risolve con lo stesso tipo passato al callback.
getChildren()
chrome.bookmarks.getChildren(
id: string,
callback?: function,
)
Recupera i file secondari dell'ID BookmarkTreeNode specificato.
Parametri
-
id
stringa
-
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:(results: BookmarkTreeNode[]) => void
-
risultati
-
Resi
-
Promise<BookmarkTreeNode[]>
Chrome 90 e versioni successive .Le promesse sono supportate in Manifest V3 e versioni successive, ma sono disponibili callback per la compatibilità con le versioni precedenti. Non puoi utilizzare entrambi nella stessa chiamata di funzione. La si risolve con lo stesso tipo passato al callback.
getRecent()
chrome.bookmarks.getRecent(
numberOfItems: number,
callback?: function,
)
Recupera i preferiti aggiunti di recente.
Parametri
-
numberOfItems
numero
Il numero massimo di articoli da restituire.
-
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:(results: BookmarkTreeNode[]) => void
-
risultati
-
Resi
-
Promise<BookmarkTreeNode[]>
Chrome 90 e versioni successive .Le promesse sono supportate in Manifest V3 e versioni successive, ma sono disponibili callback per la compatibilità con le versioni precedenti. Non puoi utilizzare entrambi nella stessa chiamata di funzione. La si risolve con lo stesso tipo passato al callback.
getSubTree()
chrome.bookmarks.getSubTree(
id: string,
callback?: function,
)
Recupera parte della gerarchia dei preferiti, a partire dal nodo specificato.
Parametri
-
id
stringa
L'ID della radice del sottoalbero da recuperare.
-
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:(results: BookmarkTreeNode[]) => void
-
risultati
-
Resi
-
Promise<BookmarkTreeNode[]>
Chrome 90 e versioni successive .Le promesse sono supportate in Manifest V3 e versioni successive, ma sono disponibili callback per la compatibilità con le versioni precedenti. Non puoi utilizzare entrambi nella stessa chiamata di funzione. La si risolve con lo stesso tipo passato al callback.
getTree()
chrome.bookmarks.getTree(
callback?: function,
)
Recupera l'intera gerarchia dei Preferiti.
Parametri
-
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:(results: BookmarkTreeNode[]) => void
-
risultati
-
Resi
-
Promise<BookmarkTreeNode[]>
Chrome 90 e versioni successive .Le promesse sono supportate in Manifest V3 e versioni successive, ma sono disponibili callback per la compatibilità con le versioni precedenti. Non puoi utilizzare entrambi nella stessa chiamata di funzione. La si risolve con lo stesso tipo passato al callback.
move()
chrome.bookmarks.move(
id: string,
destination: object,
callback?: function,
)
Sposta il BookmarkTreeNode specificato nel percorso fornito.
Parametri
-
id
stringa
-
destinazione
oggetto
-
indice
numero facoltativo
-
parentId
stringa facoltativo
-
-
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:(result: BookmarkTreeNode) => void
-
risultato
-
Resi
-
Promise<BookmarkTreeNode>
Chrome 90 e versioni successive .Le promesse sono supportate in Manifest V3 e versioni successive, ma sono disponibili callback per la compatibilità con le versioni precedenti. Non puoi utilizzare entrambi nella stessa chiamata di funzione. La si risolve con lo stesso tipo passato al callback.
remove()
chrome.bookmarks.remove(
id: string,
callback?: function,
)
Rimuove un preferito o una cartella di preferiti vuota.
Parametri
-
id
stringa
-
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:() => void
Resi
-
Promesso<void>
Chrome 90 e versioni successive .Le promesse sono supportate in Manifest V3 e versioni successive, ma sono disponibili callback per la compatibilità con le versioni precedenti. Non puoi utilizzare entrambi nella stessa chiamata di funzione. La si risolve con lo stesso tipo passato al callback.
removeTree()
chrome.bookmarks.removeTree(
id: string,
callback?: function,
)
Rimuove in modo ricorsivo una cartella di preferiti.
Parametri
-
id
stringa
-
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:() => void
Resi
-
Promesso<void>
Chrome 90 e versioni successive .Le promesse sono supportate in Manifest V3 e versioni successive, ma sono disponibili callback per la compatibilità con le versioni precedenti. Non puoi utilizzare entrambi nella stessa chiamata di funzione. La si risolve con lo stesso tipo passato al callback.
search()
chrome.bookmarks.search(
query: string | object,
callback?: function,
)
Le ricerche di BookmarkTreeNodes corrispondenti alla query specificata. Le query specificate con un oggetto producono BookmarkTreeNodes che corrisponde a tutte le proprietà specificate.
Parametri
-
query
string | oggetto
Una stringa di parole e frasi racchiuse tra virgolette corrispondenti a URL e titoli di preferiti oppure a un oggetto. Se è presente un oggetto, è possibile specificare le proprietà
query
,url
etitle
e verranno creati i preferiti corrispondenti a tutte le proprietà specificate.-
query
stringa facoltativo
Una stringa di parole e frasi tra virgolette corrispondenti a URL e titoli dei preferiti.
-
titolo
stringa facoltativo
Il titolo del preferito; corrisponde alla parola.
-
url
stringa facoltativo
L'URL del preferito; corrisponde alla parola. Tieni presente che le cartelle non hanno URL.
-
-
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:(results: BookmarkTreeNode[]) => void
-
risultati
-
Resi
-
Promise<BookmarkTreeNode[]>
Chrome 90 e versioni successive .Le promesse sono supportate in Manifest V3 e versioni successive, ma sono disponibili callback per la compatibilità con le versioni precedenti. Non puoi utilizzare entrambi nella stessa chiamata di funzione. La si risolve con lo stesso tipo passato al callback.
update()
chrome.bookmarks.update(
id: string,
changes: object,
callback?: function,
)
Aggiorna le proprietà di un preferito o di una cartella. Specificare solo le proprietà da modificare. non specificate verranno lasciate invariate. Nota: al momento, solo "title" e "url" sono supportati.
Parametri
-
id
stringa
-
modifiche
oggetto
-
titolo
stringa facoltativo
-
url
stringa facoltativo
-
-
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:(result: BookmarkTreeNode) => void
-
risultato
-
Resi
-
Promise<BookmarkTreeNode>
Chrome 90 e versioni successive .Le promesse sono supportate in Manifest V3 e versioni successive, ma sono disponibili callback per la compatibilità con le versioni precedenti. Non puoi utilizzare entrambi nella stessa chiamata di funzione. La si risolve con lo stesso tipo passato al callback.
Eventi
onChanged
chrome.bookmarks.onChanged.addListener(
callback: function,
)
Attivato quando un preferito o una cartella vengono modificati. Nota: al momento, questa operazione viene attivata solo dalle modifiche al titolo e all'URL.
Parametri
-
callback
funzione
Il parametro
callback
ha il seguente aspetto:(id: string, changeInfo: object) => void
-
id
stringa
-
changeInfo
oggetto
-
titolo
stringa
-
url
stringa facoltativo
-
-
onChildrenReordered
chrome.bookmarks.onChildrenReordered.addListener(
callback: function,
)
Attivato quando gli elementi secondari di una cartella hanno modificato l'ordine in cui sono ordinati nell'interfaccia utente. Non viene chiamato come risultato di move().
Parametri
-
callback
funzione
Il parametro
callback
ha il seguente aspetto:(id: string, reorderInfo: object) => void
-
id
stringa
-
reorderInfo
oggetto
-
childIds
stringa[]
-
-
onCreated
chrome.bookmarks.onCreated.addListener(
callback: function,
)
Attivato quando vengono creati un preferito o una cartella.
Parametri
-
callback
funzione
Il parametro
callback
ha il seguente aspetto:(id: string, bookmark: BookmarkTreeNode) => void
-
id
stringa
-
preferito
-
onImportBegan
chrome.bookmarks.onImportBegan.addListener(
callback: function,
)
Attivato quando inizia una sessione di importazione di preferiti. Gli osservatori costosi devono ignorare gli aggiornamenti onCreated fino a quando non viene attivato onImportEnded. Gli osservatori devono comunque gestire immediatamente le altre notifiche.
Parametri
-
callback
funzione
Il parametro
callback
ha il seguente aspetto:() => void
onImportEnded
chrome.bookmarks.onImportEnded.addListener(
callback: function,
)
Attivato al termine di una sessione di importazione di preferiti.
Parametri
-
callback
funzione
Il parametro
callback
ha il seguente aspetto:() => void
onMoved
chrome.bookmarks.onMoved.addListener(
callback: function,
)
Attivato quando un preferito o una cartella vengono spostati in un'altra cartella principale.
Parametri
-
callback
funzione
Il parametro
callback
ha il seguente aspetto:(id: string, moveInfo: object) => void
-
id
stringa
-
moveInfo
oggetto
-
indice
numero
-
oldIndex
numero
-
oldParentId
stringa
-
parentId
stringa
-
-
onRemoved
chrome.bookmarks.onRemoved.addListener(
callback: function,
)
Attivato quando viene rimosso un preferito o una cartella. Quando una cartella viene rimossa in modo ricorsivo, viene attivata un'unica notifica per la cartella e nessuna per i suoi contenuti.
Parametri
-
callback
funzione
Il parametro
callback
ha il seguente aspetto:(id: string, removeInfo: object) => void
-
id
stringa
-
removeInfo
oggetto
-
indice
numero
-
nodoChrome 48 e versioni successive .
-
parentId
stringa
-
-