Mô tả
Dùng API chrome.action
để kiểm soát biểu tượng của tiện ích trên thanh công cụ Google Chrome.
Phạm vi cung cấp
Tệp kê khai
Để sử dụng API chrome.action
, hãy chỉ định "manifest_version"
thuộc 3
và đưa vào
khoá "action"
trong tệp kê khai.
{
"name": "Action Extension",
...
"action": {
"default_icon": { // optional
"16": "images/icon16.png", // optional
"24": "images/icon24.png", // optional
"32": "images/icon32.png" // optional
},
"default_title": "Click Me", // optional, shown in tooltip
"default_popup": "popup.html" // optional
},
...
}
Khoá "action"
(cùng với các khoá con) là không bắt buộc. Khi không được đưa vào, tiện ích của bạn vẫn được hiển thị trong thanh công cụ để cung cấp quyền truy cập vào trình đơn của tiện ích. Vì lý do này, bạn nên sử dụng ít nhất các khoá "action"
và "default_icon"
.
Khái niệm và cách sử dụng
Các thành phần của giao diện người dùng
Biểu tượng
Biểu tượng này là hình ảnh chính trên thanh công cụ cho tiện ích của bạn và được đặt bằng phím "default_icon"
trong
khoá "action"
của tệp kê khai. Biểu tượng phải có 16 pixel độc lập với thiết bị (DIP) rộng và cao.
Khoá "default_icon"
là từ điển về kích thước cho đường dẫn hình ảnh. Chrome sử dụng các biểu tượng này
để chọn tỷ lệ hình ảnh để sử dụng. Nếu không tìm thấy kết quả trùng khớp hoàn toàn, Chrome sẽ chọn
có sẵn và điều chỉnh tỷ lệ cho vừa với hình ảnh, điều này có thể ảnh hưởng đến chất lượng ảnh.
Bởi vì các thiết bị có hệ số tỷ lệ ít phổ biến hơn như 1,5x hoặc 1,2x đang trở nên nhiều hơn
thông thường, bạn nên cung cấp nhiều kích thước cho biểu tượng. Việc này cũng
tương lai giúp tiện ích của bạn không bị thay đổi về kích thước trên màn hình của biểu tượng. Tuy nhiên,
nếu chỉ cung cấp một kích thước duy nhất, bạn cũng có thể thiết lập khoá "default_icon"
thành
chuỗi có đường dẫn đến một biểu tượng duy nhất thay vì từ điển.
Bạn cũng có thể gọi action.setIcon()
để thiết lập biểu tượng của tiện ích theo phương thức lập trình
bằng cách chỉ định một đường dẫn hình ảnh khác hoặc cung cấp biểu tượng được tạo động bằng cách sử dụng canvas HTML
phần tử hoặc nếu cài đặt từ một trình chạy dịch vụ tiện ích, phần ngoài màn hình
canvas.
const canvas = new OffscreenCanvas(16, 16);
const context = canvas.getContext('2d');
context.clearRect(0, 0, 16, 16);
context.fillStyle = '#00FF00'; // Green
context.fillRect(0, 0, 16, 16);
const imageData = context.getImageData(0, 0, 16, 16);
chrome.action.setIcon({imageData: imageData}, () => { /* ... */ });
Đối với các tiện ích mở rộng đóng gói (được cài đặt từ tệp .crx), hình ảnh có thể ở hầu hết các định dạng mà Blink công cụ kết xuất hình ảnh có thể hiển thị, bao gồm PNG, JPEG, BMP, ICO, v.v. SVG không được hỗ trợ. Tiện ích đã giải nén phải sử dụng hình ảnh PNG.
Chú thích (tiêu đề)
Chú giải công cụ hoặc tiêu đề, xuất hiện khi người dùng giữ con trỏ chuột trên biểu tượng của tiện ích trong thanh công cụ. Dòng chữ này cũng có trong văn bản có thể tiếp cận mà trình đọc màn hình đọc khi nút được nhấn tập trung.
Chú thích mặc định được đặt bằng trường "default_title"
của khoá "action"
trong manifest.json
.
Bạn cũng có thể thiết lập chế độ này theo phương thức lập trình bằng cách gọi action.setTitle()
.
Huy hiệu
Thao tác có thể tuỳ ý hiển thị "huy hiệu" — một ít văn bản chồng lên biểu tượng. Điều này cho phép bạn cập nhật hành động để hiển thị một lượng nhỏ thông tin về trạng thái của tiện ích, chẳng hạn như bộ đếm. Huy hiệu có một thành phần văn bản và một màu nền. Vì không gian có hạn, văn bản huy hiệu nên sử dụng tối đa 4 ký tự.
Để tạo huy hiệu, hãy thiết lập huy hiệu theo phương thức lập trình bằng cách gọi action.setBadgeBackgroundColor()
và
action.setBadgeText()
Không có chế độ cài đặt huy hiệu mặc định trong tệp kê khai. Giá trị màu huy hiệu
có thể là một mảng gồm bốn số nguyên từ 0 đến 255 tạo nên màu RGBA của
huy hiệu hoặc một chuỗi có giá trị màu CSS.
chrome.action.setBadgeBackgroundColor(
{color: [0, 255, 0, 0]}, // Green
() => { /* ... */ },
);
chrome.action.setBadgeBackgroundColor(
{color: '#00FF00'}, // Also green
() => { /* ... */ },
);
chrome.action.setBadgeBackgroundColor(
{color: 'green'}, // Also, also green
() => { /* ... */ },
);
Cửa sổ bật lên
Một cửa sổ bật lên của một hành động sẽ hiển thị khi người dùng nhấp vào nút hành động của tiện ích trong thanh công cụ. Cửa sổ bật lên có thể chứa bất kỳ nội dung HTML nào bạn thích và sẽ được tự động định kích thước cho vừa nội dung của tài khoản. Kích thước của cửa sổ bật lên phải nằm trong khoảng từ 25x25 đến 800x600 pixel.
Ban đầu, thuộc tính "default_popup"
đặt cửa sổ bật lên trong khoá "action"
trong
manifest.json
. Nếu có, thuộc tính này phải trỏ đến một đường dẫn tương đối trong phần mở rộng
thư mục. Bạn cũng có thể cập nhật giá trị này một cách linh động để trỏ đến một đường dẫn tương đối khác bằng cách sử dụng phương thức
action.setPopup()
.
Trường hợp sử dụng
Trạng thái trên mỗi thẻ
Các thao tác với tiện ích có thể có trạng thái khác nhau cho mỗi thẻ. Để đặt giá trị cho một cá nhân
hãy sử dụng thuộc tính tabId
trong phương thức cài đặt của API action
. Ví dụ: để
đặt văn bản huy hiệu cho một thẻ cụ thể, hãy làm như sau:
function getTabId() { /* ... */}
function getTabBadge() { /* ... */}
chrome.action.setBadgeText(
{
text: getTabBadge(tabId),
tabId: getTabId(),
},
() => { ... }
);
Nếu thuộc tính tabId
không được dùng nữa, thì chế độ cài đặt này sẽ được coi là một chế độ cài đặt chung. Theo thẻ cụ thể
chế độ cài đặt của bạn sẽ được ưu tiên hơn chế độ cài đặt chung.
Trạng thái bật
Theo mặc định, các thao tác trên thanh công cụ được bật (có thể nhấp) trên mọi thẻ. Bạn có thể kiểm soát điều này bằng cách sử dụng
Phương thức action.enable()
và action.disable()
. Điều này chỉ ảnh hưởng đến việc cửa sổ bật lên (nếu có) hoặc
action.onClicked
sự kiện được gửi đến tiện ích của bạn; không ảnh hưởng đến sự hiện diện của hành động
trên thanh công cụ.
Ví dụ
Các ví dụ sau đây cho thấy một số cách phổ biến mà các hành động được sử dụng trong tiện ích. Để dùng thử API này, cài đặt ví dụ về Action API trong chrome-extension-samples kho lưu trữ.
Hiện cửa sổ bật lên
Thông thường, một tiện ích sẽ hiển thị cửa sổ bật lên khi người dùng nhấp vào thao tác của tiện ích. Người nhận
triển khai điều này trong tiện ích của riêng bạn, khai báo cửa sổ bật lên trong manifest.json
và chỉ định
nội dung mà Chrome sẽ hiển thị trong cửa sổ bật lên.
// manifest.json
{
"name": "Action popup demo",
"version": "1.0",
"manifest_version": 3,
"action": {
"default_title": "Click to view a popup",
"default_popup": "popup.html"
}
}
<!-- popup.html -->
<!DOCTYPE html>
<html>
<head>
<style>
html {
min-height: 5em;
min-width: 10em;
background: salmon;
}
</style>
</head>
<body>
<p>Hello, world!</p>
</body>
</html>
Chèn tập lệnh nội dung khi nhấp chuột
Một mẫu hình phổ biến cho các tiện ích là hiển thị tính năng chính của tiện ích bằng cách sử dụng hành động. Ví dụ sau minh hoạ cho mẫu này. Khi người dùng nhấp vào hành động đó, phần mở rộng chèn một tập lệnh nội dung vào trang hiện tại. Sau đó, tập lệnh nội dung sẽ hiện cảnh báo yêu cầu xác minh mọi thứ đều hoạt động như mong đợi.
// manifest.json
{
"name": "Action script injection demo",
"version": "1.0",
"manifest_version": 3,
"action": {
"default_title": "Click to show an alert"
},
"permissions": ["activeTab", "scripting"],
"background": {
"service_worker": "background.js"
}
}
// background.js
chrome.action.onClicked.addListener((tab) => {
chrome.scripting.executeScript({
target: {tabId: tab.id},
files: ['content.js']
});
});
// content.js
alert('Hello, world!');
Mô phỏng các hành động bằng declarativeContent
Ví dụ này cho thấy cách logic nền của một tiện ích có thể (a) vô hiệu hoá một thao tác theo mặc định và (b) sử dụng declarativeContent để bật hành động này trên các trang web cụ thể.
// service-worker.js
// Wrap in an onInstalled callback to avoid unnecessary work
// every time the service worker is run
chrome.runtime.onInstalled.addListener(() => {
// Page actions are disabled by default and enabled on select tabs
chrome.action.disable();
// Clear all rules to ensure only our expected rules are set
chrome.declarativeContent.onPageChanged.removeRules(undefined, () => {
// Declare a rule to enable the action on example.com pages
let exampleRule = {
conditions: [
new chrome.declarativeContent.PageStateMatcher({
pageUrl: {hostSuffix: '.example.com'},
})
],
actions: [new chrome.declarativeContent.ShowAction()],
};
// Finally, apply our new array of rules
let rules = [exampleRule];
chrome.declarativeContent.onPageChanged.addRules(rules);
});
});
Loại
OpenPopupOptions
Thuộc tính
-
windowId
số không bắt buộc
Mã nhận dạng của cửa sổ để mở cửa sổ bật lên thao tác. Giá trị mặc định là cửa sổ đang hoạt động nếu bạn không chỉ định.
TabDetails
Thuộc tính
-
tabId
số không bắt buộc
Mã nhận dạng của thẻ cần truy vấn trạng thái. Nếu không có thẻ nào được chỉ định, thì trạng thái không cụ thể đối với thẻ sẽ được trả về.
UserSettings
Tập hợp các chế độ cài đặt do người dùng chỉ định liên quan đến hành động của một tiện ích.
Thuộc tính
-
isOnToolbar
boolean
Biểu tượng hành động của tiện ích có hiển thị trên cửa sổ trình duyệt hay không thanh công cụ cấp cao nhất (tức là liệu tiện ích đã được người dùng 'ghim' hay chưa).
UserSettingsChange
Thuộc tính
-
isOnToolbar
boolean không bắt buộc
Biểu tượng hành động của tiện ích có hiển thị trên cửa sổ trình duyệt hay không thanh công cụ cấp cao nhất (tức là liệu tiện ích đã được người dùng 'ghim' hay chưa).
Phương thức
disable()
chrome.action.disable(
tabId?: number,
callback?: function,
)
Tắt thao tác cho thẻ.
Tham số
-
tabId
số không bắt buộc
Mã của thẻ mà bạn muốn sửa đổi hành động.
-
số gọi lại
hàm không bắt buộc
Tham số
callback
sẽ có dạng như sau:() => void
Giá trị trả về
-
Lời hứa<vô hiệu>
Lời hứa được hỗ trợ trong Manifest V3 trở lên nhưng lệnh gọi lại được cung cấp cho khả năng tương thích ngược. Bạn không thể sử dụng cả hai trong cùng một lệnh gọi hàm. Chiến lược phát hành đĩa đơn Promise phân giải cùng loại được truyền đến lệnh gọi lại.
enable()
chrome.action.enable(
tabId?: number,
callback?: function,
)
Bật thao tác này cho một thẻ. Theo mặc định, các thao tác sẽ được bật.
Tham số
-
tabId
số không bắt buộc
Mã của thẻ mà bạn muốn sửa đổi hành động.
-
số gọi lại
hàm không bắt buộc
Tham số
callback
sẽ có dạng như sau:() => void
Giá trị trả về
-
Lời hứa<vô hiệu>
Lời hứa được hỗ trợ trong Manifest V3 trở lên nhưng lệnh gọi lại được cung cấp cho khả năng tương thích ngược. Bạn không thể sử dụng cả hai trong cùng một lệnh gọi hàm. Chiến lược phát hành đĩa đơn Promise phân giải cùng loại được truyền đến lệnh gọi lại.
getBadgeBackgroundColor()
chrome.action.getBadgeBackgroundColor(
details: TabDetails,
callback?: function,
)
Lấy màu nền của thao tác.
Tham số
-
chi tiết
-
số gọi lại
hàm không bắt buộc
Tham số
callback
sẽ có dạng như sau:(result: ColorArray) => void
-
kết quả
-
Giá trị trả về
-
Promise<browserAction.ColorArray>
Lời hứa được hỗ trợ trong Manifest V3 trở lên nhưng lệnh gọi lại được cung cấp cho khả năng tương thích ngược. Bạn không thể sử dụng cả hai trong cùng một lệnh gọi hàm. Chiến lược phát hành đĩa đơn Promise phân giải cùng loại được truyền đến lệnh gọi lại.
getBadgeText()
chrome.action.getBadgeText(
details: TabDetails,
callback?: function,
)
Xem văn bản huy hiệu của hành động. Nếu không có tab nào được chỉ định, văn bản huy hiệu không dành riêng cho tab sẽ được trả về. Nếu bạn bật displayActionCountAsBadgeText, văn bản phần giữ chỗ sẽ được trả về trừ phi có quyền declarativeNetRequestFeedback hoặc cung cấp văn bản huy hiệu theo thẻ cụ thể.
Tham số
-
chi tiết
-
số gọi lại
hàm không bắt buộc
Tham số
callback
sẽ có dạng như sau:(result: string) => void
-
kết quả
string
-
Giá trị trả về
-
Cam kết<string>
Lời hứa được hỗ trợ trong Manifest V3 trở lên nhưng lệnh gọi lại được cung cấp cho khả năng tương thích ngược. Bạn không thể sử dụng cả hai trong cùng một lệnh gọi hàm. Chiến lược phát hành đĩa đơn Promise phân giải cùng loại được truyền đến lệnh gọi lại.
getBadgeTextColor()
chrome.action.getBadgeTextColor(
details: TabDetails,
callback?: function,
)
Xem màu văn bản của thao tác.
Tham số
-
chi tiết
-
số gọi lại
hàm không bắt buộc
Tham số
callback
sẽ có dạng như sau:(result: ColorArray) => void
-
kết quả
-
Giá trị trả về
-
Promise<browserAction.ColorArray>
Lời hứa được hỗ trợ trong Manifest V3 trở lên nhưng lệnh gọi lại được cung cấp cho khả năng tương thích ngược. Bạn không thể sử dụng cả hai trong cùng một lệnh gọi hàm. Chiến lược phát hành đĩa đơn Promise phân giải cùng loại được truyền đến lệnh gọi lại.
getPopup()
chrome.action.getPopup(
details: TabDetails,
callback?: function,
)
Lấy tài liệu html được đặt làm cửa sổ bật lên cho thao tác này.
Tham số
-
chi tiết
-
số gọi lại
hàm không bắt buộc
Tham số
callback
sẽ có dạng như sau:(result: string) => void
-
kết quả
string
-
Giá trị trả về
-
Cam kết<string>
Lời hứa được hỗ trợ trong Manifest V3 trở lên nhưng lệnh gọi lại được cung cấp cho khả năng tương thích ngược. Bạn không thể sử dụng cả hai trong cùng một lệnh gọi hàm. Chiến lược phát hành đĩa đơn Promise phân giải cùng loại được truyền đến lệnh gọi lại.
getTitle()
chrome.action.getTitle(
details: TabDetails,
callback?: function,
)
Lấy tiêu đề của hành động.
Tham số
-
chi tiết
-
số gọi lại
hàm không bắt buộc
Tham số
callback
sẽ có dạng như sau:(result: string) => void
-
kết quả
string
-
Giá trị trả về
-
Cam kết<string>
Lời hứa được hỗ trợ trong Manifest V3 trở lên nhưng lệnh gọi lại được cung cấp cho khả năng tương thích ngược. Bạn không thể sử dụng cả hai trong cùng một lệnh gọi hàm. Chiến lược phát hành đĩa đơn Promise phân giải cùng loại được truyền đến lệnh gọi lại.
getUserSettings()
chrome.action.getUserSettings(
callback?: function,
)
Trả về các chế độ cài đặt do người dùng chỉ định liên quan đến hành động của một tiện ích.
Tham số
-
số gọi lại
hàm không bắt buộc
Tham số
callback
sẽ có dạng như sau:(userSettings: UserSettings) => void
-
userSettings
-
Giá trị trả về
-
Promise<UserSettings>
Lời hứa được hỗ trợ trong Manifest V3 trở lên nhưng lệnh gọi lại được cung cấp cho khả năng tương thích ngược. Bạn không thể sử dụng cả hai trong cùng một lệnh gọi hàm. Chiến lược phát hành đĩa đơn Promise phân giải cùng loại được truyền đến lệnh gọi lại.
isEnabled()
chrome.action.isEnabled(
tabId?: number,
callback?: function,
)
Cho biết liệu thao tác với tiện ích có được bật cho một thẻ hay không (hoặc toàn bộ nếu không có tabId
nào được cung cấp). Các thao tác được bật chỉ bằng declarativeContent
sẽ luôn trả về giá trị false.
Tham số
-
tabId
số không bắt buộc
Mã của thẻ mà bạn muốn kiểm tra trạng thái đã bật.
-
số gọi lại
hàm không bắt buộc
Tham số
callback
sẽ có dạng như sau:(isEnabled: boolean) => void
-
isEnabled
boolean
Đúng nếu thao tác với tiện ích đã bật.
-
Giá trị trả về
-
Promise<boolean>
Lời hứa được hỗ trợ trong Manifest V3 trở lên nhưng lệnh gọi lại được cung cấp cho khả năng tương thích ngược. Bạn không thể sử dụng cả hai trong cùng một lệnh gọi hàm. Chiến lược phát hành đĩa đơn Promise phân giải cùng loại được truyền đến lệnh gọi lại.
openPopup()
chrome.action.openPopup(
options?: OpenPopupOptions,
callback?: function,
)
Mở cửa sổ bật lên của tiện ích. Giữa Chrome 118 và Chrome 126, chính sách này chỉ áp dụng cho các tiện ích đã cài đặt theo chính sách.
Tham số
-
tùy chọn
OpenPopupOptions không bắt buộc
Chỉ định các tuỳ chọn để mở cửa sổ bật lên.
-
số gọi lại
hàm không bắt buộc
Tham số
callback
sẽ có dạng như sau:() => void
Giá trị trả về
-
Lời hứa<vô hiệu>
Lời hứa được hỗ trợ trong Manifest V3 trở lên nhưng lệnh gọi lại được cung cấp cho khả năng tương thích ngược. Bạn không thể sử dụng cả hai trong cùng một lệnh gọi hàm. Chiến lược phát hành đĩa đơn Promise phân giải cùng loại được truyền đến lệnh gọi lại.
setBadgeBackgroundColor()
chrome.action.setBadgeBackgroundColor(
details: object,
callback?: function,
)
Đặt màu nền cho huy hiệu.
Tham số
-
chi tiết
đối tượng
-
màu
string | ColorArray
Một mảng gồm bốn số nguyên trong phạm vi [0,255] tạo nên màu RGBA của huy hiệu. Ví dụ: màu đỏ mờ là
[255, 0, 0, 255]
. Cũng có thể là một chuỗi có giá trị CSS, với màu đỏ mờ là#FF0000
hoặc#F00
. -
tabId
số không bắt buộc
Giới hạn thay đổi ở thời điểm một thẻ cụ thể được chọn. Tự động đặt lại khi thẻ bị đóng.
-
-
số gọi lại
hàm không bắt buộc
Tham số
callback
sẽ có dạng như sau:() => void
Giá trị trả về
-
Lời hứa<vô hiệu>
Lời hứa được hỗ trợ trong Manifest V3 trở lên nhưng lệnh gọi lại được cung cấp cho khả năng tương thích ngược. Bạn không thể sử dụng cả hai trong cùng một lệnh gọi hàm. Chiến lược phát hành đĩa đơn Promise phân giải cùng loại được truyền đến lệnh gọi lại.
setBadgeText()
chrome.action.setBadgeText(
details: object,
callback?: function,
)
Đặt văn bản huy hiệu cho thao tác. Huy hiệu này sẽ xuất hiện ở phía trên biểu tượng.
Tham số
-
chi tiết
đối tượng
-
tabId
số không bắt buộc
Giới hạn thay đổi ở thời điểm một thẻ cụ thể được chọn. Tự động đặt lại khi thẻ bị đóng.
-
văn bản
chuỗi không bắt buộc
Bạn có thể truyền số lượng ký tự bất kỳ, nhưng chỉ có khoảng 4 ký tự có thể vừa với khoảng trống. Nếu truyền một chuỗi trống (
''
) thì văn bản huy hiệu sẽ bị xoá. Nếu bạn chỉ địnhtabId
vàtext
là rỗng, thì văn bản cho thẻ được chỉ định sẽ bị xoá và mặc định là văn bản huy hiệu chung.
-
-
số gọi lại
hàm không bắt buộc
Tham số
callback
sẽ có dạng như sau:() => void
Giá trị trả về
-
Lời hứa<vô hiệu>
Lời hứa được hỗ trợ trong Manifest V3 trở lên nhưng lệnh gọi lại được cung cấp cho khả năng tương thích ngược. Bạn không thể sử dụng cả hai trong cùng một lệnh gọi hàm. Chiến lược phát hành đĩa đơn Promise phân giải cùng loại được truyền đến lệnh gọi lại.
setBadgeTextColor()
chrome.action.setBadgeTextColor(
details: object,
callback?: function,
)
Đặt màu văn bản cho huy hiệu.
Tham số
-
chi tiết
đối tượng
-
màu
string | ColorArray
Một mảng gồm bốn số nguyên trong phạm vi [0,255] tạo nên màu RGBA của huy hiệu. Ví dụ: màu đỏ mờ là
[255, 0, 0, 255]
. Cũng có thể là một chuỗi có giá trị CSS, với màu đỏ mờ là#FF0000
hoặc#F00
. Nếu bạn không đặt giá trị này, thì hệ thống sẽ tự động chọn một màu tương phản với màu nền của huy hiệu, nhờ đó văn bản sẽ xuất hiện. Các màu có giá trị alpha tương đương với 0 sẽ không được đặt và sẽ trả về lỗi. -
tabId
số không bắt buộc
Giới hạn thay đổi ở thời điểm một thẻ cụ thể được chọn. Tự động đặt lại khi thẻ bị đóng.
-
-
số gọi lại
hàm không bắt buộc
Tham số
callback
sẽ có dạng như sau:() => void
Giá trị trả về
-
Lời hứa<vô hiệu>
Lời hứa được hỗ trợ trong Manifest V3 trở lên nhưng lệnh gọi lại được cung cấp cho khả năng tương thích ngược. Bạn không thể sử dụng cả hai trong cùng một lệnh gọi hàm. Chiến lược phát hành đĩa đơn Promise phân giải cùng loại được truyền đến lệnh gọi lại.
setIcon()
chrome.action.setIcon(
details: object,
callback?: function,
)
Đặt biểu tượng cho thao tác. Biểu tượng có thể được chỉ định dưới dạng đường dẫn đến tệp hình ảnh hoặc dữ liệu pixel từ một phần tử canvas hoặc làm từ điển của một trong hai phần tử đó. Bạn phải chỉ định path hoặc thuộc tính imageData.
Tham số
-
chi tiết
đối tượng
-
dữ liệu hình ảnh
ImageData | đối tượng không bắt buộc
Đối tượng ImageData hoặc từ điển {size -> ImageData} biểu thị biểu tượng cần đặt. Nếu biểu tượng được chỉ định làm từ điển, thì hình ảnh thực tế được sử dụng sẽ được chọn tuỳ thuộc vào mật độ pixel của màn hình. Nếu số pixel hình ảnh vừa với một đơn vị không gian màn hình bằng
scale
, thì hình ảnh có kích thướcscale
* n sẽ được chọn, trong đó n là kích thước của biểu tượng trong giao diện người dùng. Bạn phải chỉ định ít nhất một hình ảnh. Lưu ý rằng 'details.imageData = foo' tương đương với 'details.imageData = {'16': foo}' -
đường dẫn
string | đối tượng không bắt buộc
Đường dẫn hình ảnh tương đối hoặc từ điển {size -> Tương đối đường dẫn hình ảnh} trỏ đến biểu tượng cần đặt. Nếu biểu tượng được chỉ định làm từ điển, thì hình ảnh thực tế được sử dụng sẽ được chọn tuỳ thuộc vào mật độ pixel của màn hình. Nếu số pixel hình ảnh vừa với một đơn vị không gian màn hình bằng
scale
, thì hình ảnh có kích thướcscale
* n sẽ được chọn, trong đó n là kích thước của biểu tượng trong giao diện người dùng. Bạn phải chỉ định ít nhất một hình ảnh. Lưu ý rằng 'details.path = foo' tương đương với 'details.path = {'16': foo}' -
tabId
số không bắt buộc
Giới hạn thay đổi ở thời điểm một thẻ cụ thể được chọn. Tự động đặt lại khi thẻ bị đóng.
-
-
số gọi lại
hàm không bắt buộc
Tham số
callback
sẽ có dạng như sau:() => void
Giá trị trả về
-
Lời hứa<vô hiệu>
Chrome 96 trở lênLời hứa được hỗ trợ trong Manifest V3 trở lên nhưng lệnh gọi lại được cung cấp cho khả năng tương thích ngược. Bạn không thể sử dụng cả hai trong cùng một lệnh gọi hàm. Chiến lược phát hành đĩa đơn Promise phân giải cùng loại được truyền đến lệnh gọi lại.
setPopup()
chrome.action.setPopup(
details: object,
callback?: function,
)
Đặt tài liệu HTML ở chế độ mở dưới dạng cửa sổ bật lên khi người dùng nhấp vào biểu tượng của hành động.
Tham số
-
chi tiết
đối tượng
-
cửa sổ bật lên
string
Đường dẫn tương đối đến tệp HTML sẽ hiển thị trong cửa sổ bật lên. Nếu bạn đặt thành chuỗi trống (
''
), sẽ không có cửa sổ bật lên nào hiển thị. -
tabId
số không bắt buộc
Giới hạn thay đổi ở thời điểm một thẻ cụ thể được chọn. Tự động đặt lại khi thẻ bị đóng.
-
-
số gọi lại
hàm không bắt buộc
Tham số
callback
sẽ có dạng như sau:() => void
Giá trị trả về
-
Lời hứa<vô hiệu>
Lời hứa được hỗ trợ trong Manifest V3 trở lên nhưng lệnh gọi lại được cung cấp cho khả năng tương thích ngược. Bạn không thể sử dụng cả hai trong cùng một lệnh gọi hàm. Chiến lược phát hành đĩa đơn Promise phân giải cùng loại được truyền đến lệnh gọi lại.
setTitle()
chrome.action.setTitle(
details: object,
callback?: function,
)
Đặt tiêu đề cho thao tác. Nội dung này sẽ xuất hiện trong chú thích.
Tham số
-
chi tiết
đối tượng
-
tabId
số không bắt buộc
Giới hạn thay đổi ở thời điểm một thẻ cụ thể được chọn. Tự động đặt lại khi thẻ bị đóng.
-
tiêu đề
string
Chuỗi mà thao tác sẽ hiển thị khi di chuột qua.
-
-
số gọi lại
hàm không bắt buộc
Tham số
callback
sẽ có dạng như sau:() => void
Giá trị trả về
-
Lời hứa<vô hiệu>
Lời hứa được hỗ trợ trong Manifest V3 trở lên nhưng lệnh gọi lại được cung cấp cho khả năng tương thích ngược. Bạn không thể sử dụng cả hai trong cùng một lệnh gọi hàm. Chiến lược phát hành đĩa đơn Promise phân giải cùng loại được truyền đến lệnh gọi lại.
Sự kiện
onClicked
chrome.action.onClicked.addListener(
callback: function,
)
Được kích hoạt khi người dùng nhấp vào một biểu tượng hành động. Sự kiện này sẽ không kích hoạt nếu hành động có cửa sổ bật lên.
Tham số
-
số gọi lại
hàm
Tham số
callback
sẽ có dạng như sau:(tab: tabs.Tab) => void
-
phím tab
-
onUserSettingsChanged
chrome.action.onUserSettingsChanged.addListener(
callback: function,
)
Được kích hoạt khi người dùng chỉ định cài đặt liên quan đến thay đổi hành động của tiện ích.
Tham số
-
số gọi lại
hàm
Tham số
callback
sẽ có dạng như sau:(change: UserSettingsChange) => void
-
thay đổi
-