Biểu tượng yêu thích (viết tắt của "Favorite biểu tượng") là một biểu tượng nhỏ xuất hiện trong thanh địa chỉ của trình duyệt. Biểu tượng trang web thường được dùng để xác định và phân biệt các trang web. Bài viết này mô tả cách truy xuất biểu tượng trang web trong phần mở rộng Tệp kê khai V3.
Truy cập vào biểu tượng của một trang web
Để truy xuất biểu tượng trang web, bạn cần tạo URL sau:
chrome-extension://EXTENSION_ID/_favicon/?pageUrl=EXAMPLE_URL&size=FAV_SIZE
EXTENSION_ID
- Mã của phần mở rộng.
EXAMPLE_URL
- URL của trang web của biểu tượng trang web.
FAV_SIZE
- Kích thước của biểu tượng trang web. Kích thước phổ biến nhất là 16 x 16 pixel.
Các bước sau đây mô tả cách tạo URL này trong tiện ích Chrome:
Bước 1: cập nhật tệp kê khai
Trước tiên, bạn phải yêu cầu quyền "favicon"
trong tệp kê khai.
{
"name": "Favicon API in a popup",
"manifest_version": 3,
...
"permissions": ["favicon"],
...
}
Ngoài ra, khi tìm nạp biểu tượng trang web trong tập lệnh nội dung, thư mục "_favicon/*"
phải được khai báo là tài nguyên có thể truy cập trên web. Ví dụ:
{
"name": "Favicon API in content scripts",
"manifest_version": 3,
"content_scripts": [
{
"matches": ["<all_urls>"],
"js": ["content.js"]
}
],
"permissions": ["favicon"],
"web_accessible_resources": [
{
"resources": ["_favicon/*"],
"matches": ["<all_urls>"],
"extension_ids": ["*"]
}
]
...
}
Bước 2: tạo URL
Hàm sau đây sử dụng runtime.getURL()
để tạo một URL đủ điều kiện trỏ đến thư mục "_favicon/"
. Sau đó, hàm này sẽ trả về một chuỗi mới đại diện cho URL có một số tham số truy vấn. Cuối cùng, tiện ích này sẽ thêm hình ảnh vào phần nội dung.
function faviconURL(u) {
const url = new URL(chrome.runtime.getURL("/_favicon/"));
url.searchParams.set("pageUrl", u);
url.searchParams.set("size", "32");
return url.toString();
}
const img = document.createElement('img');
img.src = faviconURL("https://www.google.com")
document.body.appendChild(img);
Ví dụ này là URL của biểu tượng trang web www.google.com
32px có chứa một mã tiện ích ngẫu nhiên:
chrome-extension://eghkbfdcoeikaepkldhfgphlaiojonpc/_favicon/?pageUrl=https%3A%2F%2Fwww.google.com&size=32
Ví dụ về phần mở rộng
Có hai ví dụ về biểu tượng trang web trong kho lưu trữ chrome-extension-samples:
- Ví dụ về cửa sổ bật lên Favicon.
- Ví dụ về tập lệnh nội dung biểu tượng trang web.