Questa autorizzazione attiva un avviso.
Descrizione
Usa l'API chrome.bookmarks
per creare, organizzare e manipolare in altro modo i preferiti. Consulta anche l'articolo Eseguire l'override delle pagine, che puoi utilizzare per creare una pagina Gestione Preferiti personalizzata.
Autorizzazioni
bookmarks
Manifest
Per utilizzare l'API bookmarks, devi dichiarare l'autorizzazione "bookmarks" nel manifest dell'estensione. Ad esempio:
{
"name": "My extension",
...
"permissions": [
"bookmarks"
],
...
}
Oggetti e proprietà
I preferiti sono organizzati in una struttura ad albero, in cui ogni nodo è un preferito o una cartella (a volte chiamato gruppo). Ogni nodo nella struttura ad albero è rappresentato da un oggetto bookmarks.BookmarkTreeNode.
Le proprietà BookmarkTreeNode
vengono utilizzate nell'API chrome.bookmarks
. Ad esempio, quando chiami bookmarks.create, passi la proprietà principale del nuovo nodo (parentId
) e, facoltativamente, le proprietà index
, title
e url
del nodo. Consulta bookmarks.BookmarkTreeNode per informazioni 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
eseguire 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 segnalibro che rimanda alla documentazione per sviluppatori per le estensioni. Poiché non succederà nulla di male se la creazione del preferito non va a buon fine, questo codice non si preoccupa di definire una funzione di callback.
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 dal repository chrome-extension-samples.
Tipi
BookmarkTreeNode
Un nodo (un preferito o una cartella) nell'albero dei preferiti. I nodi secondari sono ordinati all'interno della rispettiva cartella padre.
Proprietà
-
bambini
BookmarkTreeNode[] facoltativo
Un elenco ordinato di elementi secondari di questo nodo.
-
dateAdded
numero facoltativo
Data di creazione di questo 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 successiveL'ultima apertura del nodo, 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 padre.
-
parentId
stringa facoltativo
Il
id
della cartella principale. Omesso per il nodo radice. -
title
stringa
Il testo visualizzato per il nodo.
-
non modificabile
facoltativo
Indica 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 a cui viene indirizzato 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 questo nodo è stato configurato dall'amministratore di sistema. Omesso se il nodo può essere modificato dall'utente e dall'estensione (impostazione predefinita).
Valore
CreateDetails
Oggetto passato alla funzione create().
Proprietà
-
indice
numero facoltativo
-
parentId
stringa facoltativo
Il valore predefinito è la cartella Altri preferiti.
-
title
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 l'URL è NULL o mancante, sarà una cartella.
Parametri
-
aggiungere ai preferiti
-
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:(result: BookmarkTreeNode) => void
-
risultato
-
Ritorni
-
Promise<BookmarkTreeNode>
Chrome 90 e versioni successiveLe promesse sono supportate solo per Manifest V3 e versioni successive; altre piattaforme devono utilizzare i callback.
get()
chrome.bookmarks.get(
idOrIdList: string | [string, ...string[]],
callback?: function,
)
Recupera i BookmarkTreeNode specificati.
Parametri
-
idOrIdList
stringa | [stringa, ...string[]]
Un singolo ID con valore stringa o un array di ID con valori stringa
-
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:(results: BookmarkTreeNode[]) => void
-
risultati
-
Ritorni
-
Promise<BookmarkTreeNode[]>
Chrome 90 e versioni successiveLe promesse sono supportate solo per Manifest V3 e versioni successive; altre piattaforme devono utilizzare i callback.
getChildren()
chrome.bookmarks.getChildren(
id: string,
callback?: function,
)
Recupera gli elementi secondari dell'ID BookmarkTreeNode specificato.
Parametri
-
id
stringa
-
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:(results: BookmarkTreeNode[]) => void
-
risultati
-
Ritorni
-
Promise<BookmarkTreeNode[]>
Chrome 90 e versioni successiveLe promesse sono supportate solo per Manifest V3 e versioni successive; altre piattaforme devono utilizzare i 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
-
Ritorni
-
Promise<BookmarkTreeNode[]>
Chrome 90 e versioni successiveLe promesse sono supportate solo per Manifest V3 e versioni successive; altre piattaforme devono utilizzare i 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
-
Ritorni
-
Promise<BookmarkTreeNode[]>
Chrome 90 e versioni successiveLe promesse sono supportate solo per Manifest V3 e versioni successive; altre piattaforme devono utilizzare i 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
-
Ritorni
-
Promise<BookmarkTreeNode[]>
Chrome 90 e versioni successiveLe promesse sono supportate solo per Manifest V3 e versioni successive; altre piattaforme devono utilizzare i callback.
move()
chrome.bookmarks.move(
id: string,
destination: object,
callback?: function,
)
Sposta il BookmarkTreeNode specificato nella posizione fornita.
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
-
Ritorni
-
Promise<BookmarkTreeNode>
Chrome 90 e versioni successiveLe promesse sono supportate solo per Manifest V3 e versioni successive; altre piattaforme devono utilizzare i 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
Ritorni
-
Promise<void>
Chrome 90 e versioni successiveLe promesse sono supportate solo per Manifest V3 e versioni successive; altre piattaforme devono utilizzare i 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
Ritorni
-
Promise<void>
Chrome 90 e versioni successiveLe promesse sono supportate solo per Manifest V3 e versioni successive; altre piattaforme devono utilizzare i callback.
search()
chrome.bookmarks.search(
query: string | object,
callback?: function,
)
Cerca BookmarkTreeNodes corrispondenti alla query specificata. Le query specificate con un oggetto producono BookmarkTreeNodes che corrisponde a tutte le proprietà specificate.
Parametri
-
query
stringa | oggetto
Una stringa di parole e frasi tra virgolette corrispondenti a URL e titoli dei preferiti oppure un oggetto. Se si tratta di un oggetto, è possibile specificare le proprietà
query
,url
etitle
e verranno generati preferiti che corrispondono a tutte le proprietà specificate.-
query
stringa facoltativo
Una stringa di parole e frasi tra virgolette corrispondenti a URL e titoli dei preferiti.
-
title
stringa facoltativo
Il titolo del preferito; corrisponde esattamente al titolo.
-
url
stringa facoltativo
L'URL del preferito; corrisponde esattamente al testo. Tieni presente che le cartelle non hanno un URL.
-
-
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:(results: BookmarkTreeNode[]) => void
-
risultati
-
Ritorni
-
Promise<BookmarkTreeNode[]>
Chrome 90 e versioni successiveLe promesse sono supportate solo per Manifest V3 e versioni successive; altre piattaforme devono utilizzare i callback.
update()
chrome.bookmarks.update(
id: string,
changes: object,
callback?: function,
)
Aggiorna le proprietà di un preferito o di una cartella. Specifica solo le proprietà da modificare; le proprietà non specificate rimarranno invariate. Nota: al momento sono supportati solo "title" e "url".
Parametri
-
id
stringa
-
modifiche
oggetto
-
title
stringa facoltativo
-
url
stringa facoltativo
-
-
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:(result: BookmarkTreeNode) => void
-
risultato
-
Ritorni
-
Promise<BookmarkTreeNode>
Chrome 90 e versioni successiveLe promesse sono supportate solo per Manifest V3 e versioni successive; altre piattaforme devono utilizzare i callback.
Eventi
onChanged
chrome.bookmarks.onChanged.addListener(
callback: function,
)
Attivato quando un preferito o una cartella vengono modificati. Nota: al momento, questa impostazione viene attivata solo dalle modifiche ai titoli e agli URL.
Parametri
-
callback
funzione
Il parametro
callback
ha il seguente aspetto:(id: string, changeInfo: object) => void
-
id
stringa
-
changeInfo
oggetto
-
title
stringa
-
url
stringa facoltativo
-
-
onChildrenReordered
chrome.bookmarks.onChildrenReordered.addListener(
callback: function,
)
Attivato quando gli elementi secondari di una cartella hanno modificato l'ordine in base all'ordinamento nell'interfaccia utente. Questo metodo non viene chiamato in seguito a 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
-
aggiungere ai preferiti
-
onImportBegan
chrome.bookmarks.onImportBegan.addListener(
callback: function,
)
Attivato quando inizia una sessione di importazione dei preferiti. Gli osservatori costosi dovrebbero ignorare gli aggiornamenti onCreated fino a quando onImportEnded non viene attivato. Gli osservatori dovrebbero 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 dei preferiti.
Parametri
-
callback
funzione
Il parametro
callback
ha il seguente aspetto:() => void
onMoved
chrome.bookmarks.onMoved.addListener(
callback: function,
)
Viene 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 un preferito o una cartella vengono rimossi. Quando una cartella viene rimossa in modo ricorsivo, viene attivata una singola 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
-
-