Açıklama
Yer işaretleri oluşturmak, düzenlemek ve başka şekilde işlemek için chrome.bookmarks
API'yi kullanın. Özel bir yer işareti yöneticisi sayfası oluşturmak için kullanabileceğiniz Sayfaları geçersiz kılma başlıklı makaleyi de inceleyin.
İzinler
bookmarks
Yer işaretleri API'sini kullanmak için uzantı manifestinde "yer işaretleri" iznini beyan etmeniz gerekir. Örneğin:
{
"name": "My extension",
...
"permissions": [
"bookmarks"
],
...
}
Kavramlar ve kullanım
Nesneler ve özellikler
Yer işaretleri, ağaç şeklinde düzenlenir. Ağaçtaki her düğüm bir yer işareti veya klasördür (bazen grup olarak da adlandırılır). Ağaçtaki her düğüm, bir bookmarks.BookmarkTreeNode nesnesi ile temsil edilir.
BookmarkTreeNode
mülkleri, chrome.bookmarks
API'sinde kullanılır. Örneğin, bookmarks.create işlevini çağırdığınızda yeni düğümün üst öğesini (parentId
) ve isteğe bağlı olarak düğümün index
, title
ve url
özelliklerini iletirsiniz. Bir düğümün sahip olabileceği özellikler hakkında bilgi için bookmarks.BookmarkTreeNode konusuna bakın.
Örnekler
Aşağıdaki kod, "Uzantı yer işaretleri" başlıklı bir klasör oluşturur. create()
işlevinin ilk bağımsız değişkeni, yeni klasörün özelliklerini belirtir. İkinci bağımsız değişken, klasör oluşturulduktan sonra çalıştırılacak bir işlevi tanımlar.
chrome.bookmarks.create(
{'parentId': bookmarkBar.id, 'title': 'Extension bookmarks'},
function(newFolder) {
console.log("added folder: " + newFolder.title);
},
);
Aşağıdaki snippet, uzantılarla ilgili geliştirici belgelerini işaret eden bir yer işareti oluşturur. Yer işareti oluşturma işlemi başarısız olursa kötü bir şey olmayacağı için bu kodda geri çağırma işlevi tanımlanmaz.
chrome.bookmarks.create({
'parentId': extensionsFolderId,
'title': 'Extensions doc',
'url': 'https://developer.chrome.com/docs/extensions',
});
Bu API'yi denemek için chrome-extension-samples deposundan Bookmarks API örneğini yükleyin.
Türler
BookmarkTreeNode
Yer işareti ağacındaki bir düğüm (yer işareti veya klasör). Alt düğümler, üst klasörlerinde sıralanır.
Özellikler
-
çocuklar
BookmarkTreeNode[] isteğe bağlı
Bu düğümün alt öğelerinin sıralı listesi.
-
dateAdded
number isteğe bağlı
Bu düğümün oluşturulduğu zaman (
new Date(dateAdded)
) epoch'tan beri geçen milisaniye cinsinden. -
dateGroupModified
number isteğe bağlı
Bu klasörün içeriğinin son değiştirildiği tarih (epoch'tan itibaren milisaniye cinsinden).
-
dateLastUsed
number isteğe bağlı
Chrome 114 ve sonraki sürümlerBu düğümün, epoch'tan bu yana milisaniye cinsinden son açıldığı zaman. Klasörler için ayarlanmamıştır.
-
id
dize
Nodun benzersiz tanımlayıcısı. Kimlikler mevcut profilde benzersizdir ve tarayıcı yeniden başlatıldıktan sonra bile geçerliliğini korur.
-
indeks
number isteğe bağlı
Bu düğümün, üst klasöründeki 0 tabanlı konumu.
-
parentId
dize isteğe bağlı
Üst klasörün
id
. Kök düğüm için atlanır. -
title
dize
Düğüm için görüntülenen metin.
-
değiştirilemez
"managed"
isteğe bağlıBu düğümün neden değiştirilemediğini belirtir.
managed
değeri, bu düğümün sistem yöneticisi veya gözetimli bir kullanıcının koruyucusu tarafından yapılandırıldığını gösterir. Düğüm kullanıcı ve uzantı tarafından değiştirilebiliyorsa atlanır (varsayılan). -
url
dize isteğe bağlı
Kullanıcı yer işaretini tıkladığında yönlendirilen URL. Klasörler için atlanır.
BookmarkTreeNodeUnmodifiable
Bu düğümün neden değiştirilemediğini belirtir. managed
değeri, bu düğümün sistem yöneticisi tarafından yapılandırıldığını gösterir. Düğüm kullanıcı ve uzantı tarafından değiştirilebiliyorsa atlanır (varsayılan).
Değer
"managed"
CreateDetails
create() işlevine iletilen nesne.
Özellikler
-
indeks
number isteğe bağlı
-
parentId
dize isteğe bağlı
Varsayılan olarak Diğer Yer İşaretleri klasörü kullanılır.
-
title
dize isteğe bağlı
-
url
dize isteğe bağlı
Özellikler
MAX_SUSTAINED_WRITE_OPERATIONS_PER_MINUTE
Yer işareti yazma işlemleri artık Chrome ile sınırlı değildir.
Değer
1000000
MAX_WRITE_OPERATIONS_PER_HOUR
Yer işareti yazma işlemleri artık Chrome ile sınırlı değildir.
Değer
1000000
Yöntemler
create()
chrome.bookmarks.create(
bookmark: CreateDetails,
callback?: function,
)
Belirtilen parentId altında bir yer işareti veya klasör oluşturur. url NULL ise veya eksikse klasör olur.
Parametreler
-
yer işareti
-
geri çağırma
işlev isteğe bağlı
callback
parametresi şu şekilde görünür:(result: BookmarkTreeNode) => void
-
sonuç
-
İadeler
-
Promise<BookmarkTreeNode>
Chrome 90 ve üzeri sürümlerSözler Manifest V3 ve sonraki sürümlerde desteklenir ancak geriye dönük uyumluluk için geri çağırma işlevleri sağlanır. Aynı işlev çağrısında ikisini birden kullanamazsınız. Sözleşme, geri çağırma işlevine iletilen türle çözülür.
get()
chrome.bookmarks.get(
idOrIdList: string | [string, ...string[]],
callback?: function,
)
Belirtilen BookmarkTreeNode öğelerini alır.
Parametreler
-
idOrIdList
dize | [dize, ...dize[]]
Tek bir dize değerli kimlik veya dize değerli kimlik dizisi
-
geri çağırma
işlev isteğe bağlı
callback
parametresi şu şekilde görünür:(results: BookmarkTreeNode[]) => void
-
sonuç
-
İadeler
-
Promise<BookmarkTreeNode[]>
Chrome 90 ve üzeri sürümlerSözler Manifest V3 ve sonraki sürümlerde desteklenir ancak geriye dönük uyumluluk için geri çağırma işlevleri sağlanır. Aynı işlev çağrısında ikisini birden kullanamazsınız. Sözleşme, geri çağırma işlevine iletilen türle çözülür.
getChildren()
chrome.bookmarks.getChildren(
id: string,
callback?: function,
)
Belirtilen BookmarkTreeNode kimliğinin alt öğelerini alır.
Parametreler
-
id
dize
-
geri çağırma
işlev isteğe bağlı
callback
parametresi şu şekilde görünür:(results: BookmarkTreeNode[]) => void
-
sonuç
-
İadeler
-
Promise<BookmarkTreeNode[]>
Chrome 90 ve üzeri sürümlerSözler Manifest V3 ve sonraki sürümlerde desteklenir ancak geriye dönük uyumluluk için geri çağırma işlevleri sağlanır. Aynı işlev çağrısında ikisini birden kullanamazsınız. Sözleşme, geri çağırma işlevine iletilen türle çözülür.
getRecent()
chrome.bookmarks.getRecent(
numberOfItems: number,
callback?: function,
)
Son eklenen yer işaretlerini alır.
Parametreler
-
numberOfItems
sayı
Döndürülecek maksimum öğe sayısı.
-
geri çağırma
işlev isteğe bağlı
callback
parametresi şu şekilde görünür:(results: BookmarkTreeNode[]) => void
-
sonuç
-
İadeler
-
Promise<BookmarkTreeNode[]>
Chrome 90 ve üzeri sürümlerSözler Manifest V3 ve sonraki sürümlerde desteklenir ancak geriye dönük uyumluluk için geri çağırma işlevleri sağlanır. Aynı işlev çağrısında ikisini birden kullanamazsınız. Sözleşme, geri çağırma işlevine iletilen türle çözülür.
getSubTree()
chrome.bookmarks.getSubTree(
id: string,
callback?: function,
)
Belirtilen düğümden başlayarak yer işaretleri hiyerarşisinin bir bölümünü alır.
Parametreler
-
id
dize
Alınacak alt ağacın kökünün kimliği.
-
geri çağırma
işlev isteğe bağlı
callback
parametresi şu şekilde görünür:(results: BookmarkTreeNode[]) => void
-
sonuç
-
İadeler
-
Promise<BookmarkTreeNode[]>
Chrome 90 ve üzeri sürümlerSözler Manifest V3 ve sonraki sürümlerde desteklenir ancak geriye dönük uyumluluk için geri çağırma işlevleri sağlanır. Aynı işlev çağrısında ikisini birden kullanamazsınız. Sözleşme, geri çağırma işlevine iletilen türle çözülür.
getTree()
chrome.bookmarks.getTree(
callback?: function,
)
Yer işaretleri hiyerarşisinin tamamını alır.
Parametreler
-
geri çağırma
işlev isteğe bağlı
callback
parametresi şu şekilde görünür:(results: BookmarkTreeNode[]) => void
-
sonuç
-
İadeler
-
Promise<BookmarkTreeNode[]>
Chrome 90 ve üzeri sürümlerSözler Manifest V3 ve sonraki sürümlerde desteklenir ancak geriye dönük uyumluluk için geri çağırma işlevleri sağlanır. Aynı işlev çağrısında ikisini birden kullanamazsınız. Sözleşme, geri çağırma işlevine iletilen türle çözülür.
move()
chrome.bookmarks.move(
id: string,
destination: object,
callback?: function,
)
Belirtilen BookmarkTreeNode öğesini sağlanan konuma taşır.
Parametreler
-
id
dize
-
hedef
nesne
-
indeks
number isteğe bağlı
-
parentId
dize isteğe bağlı
-
-
geri çağırma
işlev isteğe bağlı
callback
parametresi şu şekilde görünür:(result: BookmarkTreeNode) => void
-
sonuç
-
İadeler
-
Promise<BookmarkTreeNode>
Chrome 90 ve üzeri sürümlerSözler Manifest V3 ve sonraki sürümlerde desteklenir ancak geriye dönük uyumluluk için geri çağırma işlevleri sağlanır. Aynı işlev çağrısında ikisini birden kullanamazsınız. Sözleşme, geri çağırma işlevine iletilen türle çözülür.
remove()
chrome.bookmarks.remove(
id: string,
callback?: function,
)
Bir yer işaretini veya boş bir yer işareti klasörünü kaldırır.
Parametreler
-
id
dize
-
geri çağırma
işlev isteğe bağlı
callback
parametresi şu şekilde görünür:() => void
İadeler
-
Promise<void>
Chrome 90 ve üzeri sürümlerSözler Manifest V3 ve sonraki sürümlerde desteklenir ancak geriye dönük uyumluluk için geri çağırma işlevleri sağlanır. Aynı işlev çağrısında ikisini birden kullanamazsınız. Sözleşme, geri çağırma işlevine iletilen türle çözülür.
removeTree()
chrome.bookmarks.removeTree(
id: string,
callback?: function,
)
Bir yer işareti klasörünü yinelemeli olarak kaldırır.
Parametreler
-
id
dize
-
geri çağırma
işlev isteğe bağlı
callback
parametresi şu şekilde görünür:() => void
İadeler
-
Promise<void>
Chrome 90 ve üzeri sürümlerSözler Manifest V3 ve sonraki sürümlerde desteklenir ancak geriye dönük uyumluluk için geri çağırma işlevleri sağlanır. Aynı işlev çağrısında ikisini birden kullanamazsınız. Sözleşme, geri çağırma işlevine iletilen türle çözülür.
search()
chrome.bookmarks.search(
query: string | object,
callback?: function,
)
Belirtilen sorguyla eşleşen BookmarkTreeNodes'ları arar. Bir nesneyle belirtilen sorgular, belirtilen tüm özelliklerle eşleşen BookmarkTreeNodes oluşturur.
Parametreler
-
sorgu
dize | nesne
Yer işareti URL'leri ve başlıklarıyla eşleşen bir kelime ve alıntılanmış kelime öbeği dizesi veya bir nesne. Nesne ise
query
,url
vetitle
özellikleri belirtilebilir ve belirtilen tüm özelliklerle eşleşen yer işaretleri oluşturulur.-
sorgu
dize isteğe bağlı
Yer işareti URL'leri ve başlıklarıyla eşleşen bir kelime ve alıntı öbeği dizesi.
-
title
dize isteğe bağlı
Yer işaretinin başlığı; tam olarak eşleşir.
-
url
dize isteğe bağlı
Yer işaretinin URL'si; tam olarak eşleşir. Klasörlerin URL'si yoktur.
-
-
geri çağırma
işlev isteğe bağlı
callback
parametresi şu şekilde görünür:(results: BookmarkTreeNode[]) => void
-
sonuç
-
İadeler
-
Promise<BookmarkTreeNode[]>
Chrome 90 ve üzeri sürümlerSözler Manifest V3 ve sonraki sürümlerde desteklenir ancak geriye dönük uyumluluk için geri çağırma işlevleri sağlanır. Aynı işlev çağrısında ikisini birden kullanamazsınız. Sözleşme, geri çağırma işlevine iletilen türle çözülür.
update()
chrome.bookmarks.update(
id: string,
changes: object,
callback?: function,
)
Bir yer işaretinin veya klasörün özelliklerini günceller. Yalnızca değiştirmek istediğiniz özellikleri belirtin. Belirtilmeyen özellikler değiştirilmez. Not: Şu anda yalnızca "title" ve "url" desteklenmektedir.
Parametreler
-
id
dize
-
değişiklikler
nesne
-
title
dize isteğe bağlı
-
url
dize isteğe bağlı
-
-
geri çağırma
işlev isteğe bağlı
callback
parametresi şu şekilde görünür:(result: BookmarkTreeNode) => void
-
sonuç
-
İadeler
-
Promise<BookmarkTreeNode>
Chrome 90 ve üzeri sürümlerSözler Manifest V3 ve sonraki sürümlerde desteklenir ancak geriye dönük uyumluluk için geri çağırma işlevleri sağlanır. Aynı işlev çağrısında ikisini birden kullanamazsınız. Sözleşme, geri çağırma işlevine iletilen türle çözülür.
Etkinlikler
onChanged
chrome.bookmarks.onChanged.addListener(
callback: function,
)
Bir yer işareti veya klasör değiştiğinde tetiklenir. Not: Şu anda yalnızca başlık ve URL değişiklikleri bu durumu tetikler.
Parametreler
-
geri çağırma
işlev
callback
parametresi şu şekilde görünür:(id: string, changeInfo: object) => void
-
id
dize
-
changeInfo
nesne
-
title
dize
-
url
dize isteğe bağlı
-
-
onChildrenReordered
chrome.bookmarks.onChildrenReordered.addListener(
callback: function,
)
Kullanıcı arayüzünde sıralama yapıldığında bir klasörün alt öğelerinin sırası değiştiğinde tetiklenir. Bu işlev, move() işlevi sonucunda çağrılmaz.
Parametreler
-
geri çağırma
işlev
callback
parametresi şu şekilde görünür:(id: string, reorderInfo: object) => void
-
id
dize
-
reorderInfo
nesne
-
childIds
dize[]
-
-
onCreated
chrome.bookmarks.onCreated.addListener(
callback: function,
)
Bir yer işareti veya klasör oluşturulduğunda tetiklenir.
Parametreler
-
geri çağırma
işlev
callback
parametresi şu şekilde görünür:(id: string, bookmark: BookmarkTreeNode) => void
-
id
dize
-
yer işareti
-
onImportBegan
chrome.bookmarks.onImportBegan.addListener(
callback: function,
)
Yer işareti içe aktarma oturumu başladığında tetiklenir. Pahalı gözlemciler, onImportEnded tetiklenene kadar onCreated güncellemelerini yoksamalıdır. Gözlemciler, diğer bildirimleri derhal ele almalıdır.
Parametreler
-
geri çağırma
işlev
callback
parametresi şu şekilde görünür:() => void
onImportEnded
chrome.bookmarks.onImportEnded.addListener(
callback: function,
)
Bir yer işareti içe aktarma oturumu sona erdiğinde tetiklenir.
Parametreler
-
geri çağırma
işlev
callback
parametresi şu şekilde görünür:() => void
onMoved
chrome.bookmarks.onMoved.addListener(
callback: function,
)
Bir yer işareti veya klasör farklı bir üst klasöre taşındığında tetiklenir.
Parametreler
-
geri çağırma
işlev
callback
parametresi şu şekilde görünür:(id: string, moveInfo: object) => void
-
id
dize
-
moveInfo
nesne
-
indeks
sayı
-
oldIndex
sayı
-
oldParentId
dize
-
parentId
dize
-
-
onRemoved
chrome.bookmarks.onRemoved.addListener(
callback: function,
)
Bir yer işareti veya klasör kaldırıldığında tetiklenir. Bir klasör yinelemeli olarak kaldırıldığında, klasör için tek bir bildirim gönderilir ve içeriği için bildirim gönderilmez.
Parametreler
-
geri çağırma
işlev
callback
parametresi şu şekilde görünür:(id: string, removeInfo: object) => void
-
id
dize
-
removeInfo
nesne
-
indeks
sayı
-
düğümChrome 48 ve üzeri sürümler
-
parentId
dize
-
-