Nội dung mô tả
Dùng API chrome.tabs
để tương tác với hệ thống thẻ của trình duyệt. Bạn có thể sử dụng API này để tạo, sửa đổi và sắp xếp lại các thẻ trong trình duyệt.
API Thẻ không chỉ cung cấp các tính năng thao tác và quản lý thẻ, mà còn có thể phát hiện ngôn ngữ của thẻ, chụp ảnh chụp màn hình và giao tiếp với tập lệnh nội dung của thẻ.
Quyền
Hầu hết các tính năng đều không yêu cầu cấp bất kỳ quyền nào để sử dụng. Ví dụ: tạo thẻ mới, tải lại thẻ, di chuyển đến một URL khác, v.v.
Có 3 quyền mà nhà phát triển cần lưu ý khi làm việc với API Thẻ.
- Quyền "tab" (thẻ)
Quyền này không cấp quyền truy cập vào không gian tên
chrome.tabs
. Thay vào đó, thư viện này cấp cho một tiện ích khả năng gọitabs.query()
dựa trên 4 thuộc tính nhạy cảm trên các thực thểtabs.Tab
:url
,pendingUrl
,title
vàfavIconUrl
.{ "name": "My extension", ... "permissions": [ "tabs" ], ... }
- Quyền của máy chủ
Quyền của máy chủ cho phép tiện ích đọc và truy vấn 4 thuộc tính
tabs.Tab
nhạy cảm của một thẻ phù hợp. Người dùng cũng có thể tương tác trực tiếp với các thẻ trùng khớp bằng các phương thức nhưtabs.captureVisibleTab()
,tabs.executeScript()
,tabs.insertCSS()
vàtabs.removeCSS()
.{ "name": "My extension", ... "host_permissions": [ "http://*/*", "https://*/*" ], ... }
- Quyền "activeTab"
activeTab
cấp quyền lưu trữ tạm thời cho thẻ hiện tại để phản hồi lệnh gọi của người dùng. Không giống như quyền của máy chủ,activeTab
không kích hoạt cảnh báo.{ "name": "My extension", ... "permissions": [ "activeTab" ], ... }
Trường hợp sử dụng
Các phần sau đây trình bày một số trường hợp sử dụng phổ biến.
Mở trang tiện ích trong thẻ mới
Một quy trình phổ biến cho tiện ích là mở trang giới thiệu trong thẻ mới khi cài đặt tiện ích. Ví dụ sau cho thấy cách thực hiện việc này.
background.js:
chrome.runtime.onInstalled.addListener(({reason}) => {
if (reason === 'install') {
chrome.tabs.create({
url: "onboarding.html"
});
}
});
Tải thẻ hiện tại
Ví dụ này minh hoạ cách trình chạy dịch vụ của một tiện ích có thể truy xuất thẻ đang hoạt động từ cửa sổ hiện được lấy tiêu điểm (hoặc cửa sổ được lấy tiêu điểm gần đây nhất, nếu không có cửa sổ Chrome nào được lấy tiêu điểm). Thẻ này thường được coi là thẻ hiện tại của người dùng.
async function getCurrentTab() {
let queryOptions = { active: true, lastFocusedWindow: true };
// `tab` will either be a `tabs.Tab` instance or `undefined`.
let [tab] = await chrome.tabs.query(queryOptions);
return tab;
}
function getCurrentTab(callback) {
let queryOptions = { active: true, lastFocusedWindow: true };
chrome.tabs.query(queryOptions, ([tab]) => {
if (chrome.runtime.lastError)
console.error(chrome.runtime.lastError);
// `tab` will either be a `tabs.Tab` instance or `undefined`.
callback(tab);
});
}
Tắt tiếng thẻ được chỉ định
Ví dụ này cho thấy cách một tiện ích có thể bật/tắt trạng thái tắt tiếng cho một thẻ nhất định.
async function toggleMuteState(tabId) {
const tab = await chrome.tabs.get(tabId);
const muted = !tab.mutedInfo.muted;
await chrome.tabs.update(tabId, {muted});
console.log(`Tab ${tab.id} is ${muted ? "muted" : "unmuted"}`);
}
function toggleMuteState(tabId) {
chrome.tabs.get(tabId, async (tab) => {
let muted = !tab.mutedInfo.muted;
await chrome.tabs.update(tabId, { muted });
console.log(`Tab ${tab.id} is ${ muted ? "muted" : "unmuted" }`);
});
}
Di chuyển thẻ hiện tại đến vị trí đầu tiên khi nhấp vào
Ví dụ này cho biết cách di chuyển một thẻ khi thao tác kéo có thể đang hoặc không. Mặc dù ví dụ này sử dụng chrome.tabs.move
, nhưng bạn có thể sử dụng cùng một mẫu chờ cho các lệnh gọi khác sửa đổi thẻ trong khi kéo.
chrome.tabs.onActivated.addListener(moveToFirstPosition);
async function moveToFirstPosition(activeInfo) {
try {
await chrome.tabs.move(activeInfo.tabId, {index: 0});
console.log("Success.");
} catch (error) {
if (error == "Error: Tabs cannot be edited right now (user may be dragging a tab).") {
setTimeout(() => moveToFirstPosition(activeInfo), 50);
} else {
console.error(error);
}
}
}
chrome.tabs.onActivated.addListener(moveToFirstPositionMV2);
function moveToFirstPositionMV2(activeInfo) {
chrome.tabs.move(activeInfo.tabId, { index: 0 }, () => {
if (chrome.runtime.lastError) {
const error = chrome.runtime.lastError;
if (error == "Error: Tabs cannot be edited right now (user may be dragging a tab).") {
setTimeout(() => moveToFirstPositionMV2(activeInfo), 50);
} else {
console.error(error);
}
} else {
console.log("Success.");
}
});
}
Truyền thông báo đến tập lệnh nội dung của thẻ đã chọn
Ví dụ này minh hoạ cách trình chạy dịch vụ của một tiện ích có thể giao tiếp với tập lệnh nội dung trong các thẻ trình duyệt cụ thể bằng tabs.sendMessage()
.
function sendMessageToActiveTab(message) {
const [tab] = await chrome.tabs.query({ active: true, lastFocusedWindow: true });
const response = await chrome.tabs.sendMessage(tab.id, message);
// TODO: Do something with the response.
}
Ví dụ về tiện ích
Để xem thêm bản minh hoạ tiện ích API Thẻ, hãy khám phá bất kỳ nội dung nào sau đây:
Loại
MutedInfo
Trạng thái tắt tiếng của thẻ và lý do cho lần thay đổi trạng thái gần đây nhất.
Thuộc tính
-
extensionId
chuỗi không bắt buộc
Mã của tiện ích đã thay đổi trạng thái tắt tiếng. Không đặt nếu một tiện ích không phải là lý do lần gần đây nhất trạng thái tắt tiếng thay đổi.
-
đã tắt tiếng
boolean
Thẻ có bị tắt tiếng (có ngăn phát âm thanh) hay không. Thẻ có thể bị tắt tiếng ngay cả khi thẻ chưa phát hoặc hiện không phát âm thanh. Tương đương với việc chỉ báo âm thanh "tắt tiếng" có hiển thị hay không.
-
lý do
MutedInfoReason không bắt buộc
Lý do thẻ bị tắt tiếng hoặc bật tiếng. Không được đặt nếu trạng thái tắt tiếng của thẻ chưa từng thay đổi.
MutedInfoReason
Một sự kiện đã gây ra thay đổi về trạng thái bị tắt tiếng.
Liệt kê
"user"
Hành động đầu vào của người dùng đã đặt trạng thái tắt tiếng.
"capture"
Quá trình chụp thẻ đã bắt đầu, buộc thay đổi trạng thái tắt tiếng.
"extension"
Một tiện ích được xác định bằng trường ExtensionId, đặt trạng thái tắt tiếng.
Tab
Thuộc tính
-
hoạt động
boolean
Liệu thẻ có đang hoạt động trong cửa sổ hay không. Không nhất thiết có nghĩa là cửa sổ được lấy tiêu điểm.
-
audible
boolean không bắt buộc
Chrome 45 trở lênLiệu thẻ có tạo ra âm thanh trong vài giây vừa qua hay không (nhưng thẻ có thể không nghe thấy nếu bạn cũng tắt tiếng). Tương đương với việc chỉ báo "âm thanh loa" có hiển thị hay không.
-
autoDiscardable
boolean
Chrome 54 trở lênLiệu trình duyệt có thể tự động hủy thẻ khi tài nguyên sắp hết hay không.
-
đã hủy
boolean
Chrome 54 trở lênLiệu thẻ có bị huỷ hay không. Thẻ bị loại bỏ là thẻ có nội dung đã được huỷ tải khỏi bộ nhớ nhưng vẫn hiển thị trong thanh thẻ. Nội dung của thiết bị sẽ được tải lại vào lần kích hoạt tiếp theo.
-
favIconUrl
chuỗi không bắt buộc
URL của biểu tượng trang web của thẻ. Thuộc tính này chỉ xuất hiện nếu tệp kê khai của tiện ích bao gồm quyền
"tabs"
. Đó cũng có thể là một chuỗi trống nếu thẻ đang tải. -
groupId
number
Chrome 88 trở lênMã của nhóm chứa thẻ.
-
độ cao
số không bắt buộc
Chiều cao của thẻ tính bằng pixel.
-
được làm nổi bật
boolean
Thẻ có được đánh dấu hay không.
-
id
số không bắt buộc
Mã của thẻ. Mã thẻ là duy nhất trong một phiên trình duyệt. Trong một số trường hợp, thẻ có thể không được chỉ định mã; ví dụ: khi truy vấn các thẻ nước ngoài bằng API
sessions
, trong trường hợp này, có thể có mã phiên. Bạn cũng có thể đặt mã thẻ thànhchrome.tabs.TAB_ID_NONE
cho các cửa sổ ứng dụng và công cụ cho nhà phát triển. -
ẩn danh
boolean
Thẻ có đang ở trong cửa sổ ẩn danh hay không.
-
index
number
Chỉ mục dựa trên 0 của thẻ trong cửa sổ của thẻ.
-
lastAccessed
số không bắt buộc
Chrome 121 trở lênLần gần đây nhất truy cập vào thẻ dưới dạng số mili giây kể từ thời gian bắt đầu của hệ thống.
-
mutedInfo
MutedInfo (Thông tin ẩn danh) không bắt buộc
Chrome 46 trở lênTrạng thái tắt tiếng của thẻ và lý do cho lần thay đổi trạng thái gần đây nhất.
-
openerTabId
số không bắt buộc
Mã của thẻ đã mở thẻ này, nếu có. Thuộc tính này chỉ xuất hiện nếu thẻ trình mở vẫn tồn tại.
-
pendingUrl
chuỗi không bắt buộc
Chrome 79 trở lênURL mà thẻ đang chuyển đến, trước khi xác nhận. Thuộc tính này chỉ xuất hiện nếu tệp kê khai của tiện ích bao gồm quyền
"tabs"
và có một yêu cầu điều hướng đang chờ xử lý. -
đã ghim
boolean
Thẻ có được ghim hay không.
-
đã chọn
boolean
Không dùng nữaVui lòng sử dụng
tabs.Tab.highlighted
.Liệu thẻ có được chọn hay không.
-
sessionId
chuỗi không bắt buộc
Mã phiên được dùng để xác định riêng biệt một thẻ thu được từ API
sessions
. -
status
TabStatus không bắt buộc
Trạng thái tải của thẻ.
-
title
chuỗi không bắt buộc
Tiêu đề của thẻ. Thuộc tính này chỉ xuất hiện nếu tệp kê khai của tiện ích bao gồm quyền
"tabs"
. -
url
chuỗi không bắt buộc
URL được cam kết cuối cùng trong khung chính của thẻ. Thuộc tính này chỉ xuất hiện nếu tệp kê khai của tiện ích bao gồm quyền
"tabs"
và có thể là một chuỗi trống nếu thẻ chưa được xác nhận. Xem thêmTab.pendingUrl
. -
chiều rộng
số không bắt buộc
Chiều rộng của thẻ tính bằng pixel.
-
windowId
number
Mã của cửa sổ chứa thẻ.
TabStatus
Trạng thái tải của thẻ.
Liệt kê
"loading"
WindowType
Loại cửa sổ.
Liệt kê
"devtools"
ZoomSettings
Xác định cách xử lý các thay đổi về mức thu phóng trong một thẻ và ở phạm vi.
Thuộc tính
-
defaultZoomFactor
số không bắt buộc
Chrome 43 trở lênDùng để trả về mức thu phóng mặc định cho thẻ hiện tại trong các lệnh gọi tab.getZoomSettings.
-
chế độ
ZoomSettingsMode không bắt buộc
Xác định cách xử lý các thay đổi về mức thu phóng, ví dụ: thực thể nào chịu trách nhiệm về việc điều chỉnh tỷ lệ thực tế của trang; giá trị mặc định là
automatic
. -
xác định phạm vi của thứ nguyên.
ZoomSettingsScope không bắt buộc
Xác định xem những thay đổi về thu phóng sẽ được duy trì cho nguồn gốc của trang hay chỉ có hiệu lực trong thẻ này; mặc định là
per-origin
khi ở chế độautomatic
và nếu không làper-tab
.
ZoomSettingsMode
Xác định cách xử lý các thay đổi về mức thu phóng, ví dụ: thực thể nào chịu trách nhiệm về việc điều chỉnh tỷ lệ thực tế của trang; giá trị mặc định là automatic
.
Liệt kê
"tự động"
Các thay đổi về thu phóng được trình duyệt xử lý tự động.
"manual"
Ghi đè quá trình xử lý tự động các thay đổi về mức thu phóng. Sự kiện onZoomChange
sẽ vẫn được gửi đi và tiện ích có trách nhiệm theo dõi sự kiện này và điều chỉnh tỷ lệ trang theo cách thủ công. Chế độ này không hỗ trợ thu phóng per-origin
nên sẽ bỏ qua chế độ cài đặt thu phóng scope
và giả định per-tab
.
"disabled"
Tắt tất cả tính năng thu phóng trong thẻ. Thẻ sẽ chuyển về mức thu phóng mặc định và mọi thay đổi bạn thử thu phóng sẽ bị bỏ qua.
ZoomSettingsScope
Xác định xem những thay đổi về thu phóng sẽ được duy trì cho nguồn gốc của trang hay chỉ có hiệu lực trong thẻ này; mặc định là per-origin
khi ở chế độ automatic
và nếu không là per-tab
.
Liệt kê
"per-origin"
Các thay đổi thu phóng vẫn tồn tại trong nguồn gốc của trang được thu phóng, tức là tất cả các thẻ khác điều hướng đến cùng nguồn gốc đó cũng được thu phóng. Ngoài ra, các thay đổi thu phóng per-origin
được lưu theo điểm gốc, nghĩa là khi điều hướng đến các trang khác có cùng nguồn gốc, tất cả các thay đổi đó đều được thu phóng theo cùng một hệ số thu phóng. Phạm vi per-origin
chỉ có ở chế độ automatic
.
"mỗi thẻ"
Thay đổi về thu phóng chỉ có hiệu lực trong thẻ này và thay đổi thu phóng trong các thẻ khác không ảnh hưởng đến việc thu phóng của thẻ này. Ngoài ra, những thay đổi về thu phóng per-tab
được đặt lại khi điều hướng; việc điều hướng một thẻ luôn tải các trang với hệ số thu phóng per-origin
tương ứng.
Thuộc tính
MAX_CAPTURE_VISIBLE_TAB_CALLS_PER_SECOND
Số lần tối đa mà captureVisibleTab
có thể được gọi mỗi giây. captureVisibleTab
tốn kém và không nên được gọi quá thường xuyên.
Giá trị
2
TAB_ID_NONE
Một mã đại diện cho việc không có thẻ trình duyệt.
Giá trị
-1
TAB_INDEX_NONE
Chỉ mục đại diện cho việc không có chỉ mục thẻ trong dải_ô_thẻ.
Giá trị
-1
Phương thức
captureVisibleTab()
chrome.tabs.captureVisibleTab(
windowId?: number,
options?: ImageDetails,
callback?: function,
)
Chụp khu vực hiển thị của thẻ hiện đang hoạt động trong cửa sổ được chỉ định. Để gọi phương thức này, tiện ích phải có quyền <all_urls> hoặc quyền activeTab. Ngoài những trang web mà tiện ích có thể truy cập bình thường, phương pháp này còn cho phép tiện ích chụp những trang web nhạy cảm bị hạn chế, bao gồm các trang chrome:-lược đồ, trang của các tiện ích khác và dữ liệu: URL. Các trang web nhạy cảm này chỉ có thể được ghi bằng quyền ActiveTab. URL của tệp chỉ có thể được ghi lại nếu tiện ích đã được cấp quyền truy cập vào tệp.
Tham số
-
windowId
số không bắt buộc
Cửa sổ mục tiêu. Giá trị mặc định là cửa sổ hiện tại.
-
tùy chọn
ImageDetails không bắt buộc
-
số gọi lại
hàm không bắt buộc
Tham số
callback
sẽ có dạng như sau:(dataUrl: string) => void
-
dataUrl
string
URL dữ liệu mã hoá hình ảnh của khu vực hiển thị trên thẻ đã chụp. Có thể được gán cho thuộc tính "src" của một phần tử HTML
img
để hiển thị.
-
Giá trị trả về
-
Hứa hẹn<string>
Chrome 88 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 để có 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. Lời hứa sẽ được phân giải bằng cùng một loại được truyền đến lệnh gọi lại.
connect()
chrome.tabs.connect(
tabId: number,
connectInfo?: object,
)
Kết nối với(các) tập lệnh nội dung trong thẻ được chỉ định. Sự kiện runtime.onConnect
được kích hoạt trong mỗi tập lệnh nội dung chạy trong thẻ được chỉ định cho tiện ích hiện tại. Để biết thêm thông tin chi tiết, hãy xem phần Thông báo cho tập lệnh nội dung.
Tham số
-
tabId
number
-
connectInfo
đối tượng không bắt buộc
-
documentId
chuỗi không bắt buộc
Chrome 106 trở lênMở cổng đến một tài liệu cụ thể được xác định bằng
documentId
thay vì tất cả khung trong thẻ. -
frameId
số không bắt buộc
Mở cổng đến một khung cụ thể do
frameId
xác định thay vì tất cả khung trong thẻ. -
tên
chuỗi không bắt buộc
Được chuyển vào onConnect đối với các tập lệnh nội dung đang theo dõi sự kiện kết nối.
-
Giá trị trả về
-
Cổng có thể dùng để giao tiếp với các tập lệnh nội dung đang chạy trong thẻ được chỉ định. Sự kiện
runtime.Port
của cổng sẽ được kích hoạt nếu thẻ đóng hoặc không tồn tại.
create()
chrome.tabs.create(
createProperties: object,
callback?: function,
)
Tạo một thẻ mới.
Tham số
-
createProperties
đối tượng
-
hoạt động
boolean không bắt buộc
Liệu thẻ đó có trở thành thẻ đang hoạt động trong cửa sổ hay không. Không ảnh hưởng đến việc cửa sổ có được lấy tiêu điểm hay không (xem
windows.update
). Giá trị mặc định làtrue
. -
index
số không bắt buộc
Vị trí mà thẻ cần nằm trong cửa sổ. Giá trị đã cung cấp được giới hạn trong khoảng từ 0 đến số thẻ trong cửa sổ.
-
openerTabId
số không bắt buộc
Mã của thẻ đã mở thẻ này. Nếu được chỉ định, thẻ mở phải ở trong cùng một cửa sổ với thẻ mới tạo.
-
đã ghim
boolean không bắt buộc
Liệu thẻ có nên được ghim hay không. Mặc định là
false
. -
đã chọn
boolean không bắt buộc
Không dùng nữaVui lòng sử dụng từ khoá đang hoạt động.
Thẻ có trở thành thẻ đã chọn trong cửa sổ hay không. Mặc định là
true
. -
url
chuỗi không bắt buộc
URL để điều hướng thẻ ban đầu. Các URL đủ điều kiện phải bao gồm một lược đồ (tức là "http://www.google.com", chứ không phải "www.google.com"). URL tương đối so với trang hiện tại trong tiện ích. Giá trị mặc định là trang Thẻ mới.
-
windowId
số không bắt buộc
Cửa sổ để tạo thẻ mới. Giá trị mặc định là cửa sổ hiện tại.
-
-
số gọi lại
hàm không bắt buộc
Tham số
callback
sẽ có dạng như sau:(tab: Tab) => void
-
tab
Thẻ đã tạo.
-
Giá trị trả về
-
Promise<Tab>
Chrome 88 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 để có 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. Lời hứa sẽ được phân giải bằng cùng một loại được truyền đến lệnh gọi lại.
detectLanguage()
chrome.tabs.detectLanguage(
tabId?: number,
callback?: function,
)
Phát hiện ngôn ngữ chính của nội dung trong một thẻ.
Tham số
-
tabId
số không bắt buộc
Mặc định là thẻ đang hoạt động của cửa sổ hiện tại.
-
số gọi lại
hàm không bắt buộc
Tham số
callback
sẽ có dạng như sau:(language: string) => void
-
language
string
Mã ngôn ngữ ISO như
en
hoặcfr
. Để xem danh sách đầy đủ các ngôn ngữ mà phương thức này hỗ trợ, hãy xem kLanguageInfoTable. Cột thứ hai đến thứ tư được đánh dấu và giá trị đầu tiên không phải NULL sẽ được trả về, ngoại trừ tiếng Trung giản thể cózh-CN
được trả về. Đối với ngôn ngữ không xác định/không xác định,und
sẽ được trả về.
-
Giá trị trả về
-
Hứa hẹn<string>
Chrome 88 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 để có 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. Lời hứa sẽ được phân giải bằng cùng một loại được truyền đến lệnh gọi lại.
discard()
chrome.tabs.discard(
tabId?: number,
callback?: function,
)
Loại bỏ một thẻ khỏi kỷ niệm. Các thẻ đã bị loại bỏ vẫn hiển thị trên dải thẻ và được tải lại khi bạn kích hoạt.
Tham số
-
tabId
số không bắt buộc
Mã của thẻ sẽ bị loại bỏ. Nếu được chỉ định, thẻ sẽ bị huỷ trừ phi đang hoạt động hoặc đã bị huỷ. Nếu bạn bỏ qua, trình duyệt sẽ loại bỏ thẻ ít quan trọng nhất. Thao tác này có thể không thành công nếu không có thẻ nào có thể loại bỏ.
-
số gọi lại
hàm không bắt buộc
Tham số
callback
sẽ có dạng như sau:(tab?: Tab) => void
-
tab
Thẻ không bắt buộc
Thẻ bị huỷ (nếu bị huỷ thành công); nếu không thì không xác định.
-
Giá trị trả về
-
Promise<Tab | undefined>
Chrome 88 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 để có 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. Lời hứa sẽ được phân giải bằng cùng một loại được truyền đến lệnh gọi lại.
duplicate()
chrome.tabs.duplicate(
tabId: number,
callback?: function,
)
Sao chép một thẻ.
Tham số
-
tabId
number
Mã của thẻ cần sao chép.
-
số gọi lại
hàm không bắt buộc
Tham số
callback
sẽ có dạng như sau:(tab?: Tab) => void
Giá trị trả về
-
Promise<Tab | undefined>
Chrome 88 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 để có 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. Lời hứa sẽ được phân giải bằng cùng một loại được truyền đến lệnh gọi lại.
executeScript()
chrome.tabs.executeScript(
tabId?: number,
details: InjectDetails,
callback?: function,
)
Thay thế bằng scripting.executeScript
trong Manifest V3.
Chèn mã JavaScript vào một trang. Để biết thông tin chi tiết, hãy xem phần chèn có lập trình trong tài liệu tập lệnh nội dung.
Tham số
-
tabId
số không bắt buộc
Mã của thẻ chạy tập lệnh; mặc định là thẻ đang hoạt động của cửa sổ hiện tại.
-
chi tiết
Chi tiết về tập lệnh cần chạy. Bạn phải đặt mã hoặc thuộc tính tệp, nhưng không thể đặt cả hai cùng một lúc.
-
số gọi lại
hàm không bắt buộc
Tham số
callback
sẽ có dạng như sau:(result?: any[]) => void
-
kết quả
bất kỳ[] không bắt buộc
Kết quả của tập lệnh trong mỗi khung được chèn.
-
Giá trị trả về
-
Hứa hẹn<bất kỳ[] | không xác định>
Chrome 88 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 để có 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. Lời hứa sẽ được phân giải bằng cùng một loại được truyền đến lệnh gọi lại.
get()
chrome.tabs.get(
tabId: number,
callback?: function,
)
Truy xuất thông tin chi tiết về thẻ được chỉ định.
Tham số
-
tabId
number
-
số gọi lại
hàm không bắt buộc
Tham số
callback
sẽ có dạng như sau:(tab: Tab) => void
-
tab
-
Giá trị trả về
-
Promise<Tab>
Chrome 88 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 để có 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. Lời hứa sẽ được phân giải bằng cùng một loại được truyền đến lệnh gọi lại.
getAllInWindow()
chrome.tabs.getAllInWindow(
windowId?: number,
callback?: function,
)
Vui lòng sử dụng tabs.query
{windowId: windowId}
.
Lấy thông tin chi tiết về tất cả các thẻ trong cửa sổ được chỉ định.
Tham số
-
windowId
số không bắt buộc
Giá trị mặc định là cửa sổ hiện tại.
-
số gọi lại
hàm không bắt buộc
Tham số
callback
sẽ có dạng như sau:(tabs: Tab[]) => void
-
thẻ
Thẻ[]
-
Giá trị trả về
-
Promise<Tab[]>
Chrome 88 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 để có 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. Lời hứa sẽ được phân giải bằng cùng một loại được truyền đến lệnh gọi lại.
getCurrent()
chrome.tabs.getCurrent(
callback?: function,
)
Lấy thẻ mà từ đó lệnh gọi tập lệnh này đang được thực hiện. Trả về undefined
nếu được gọi từ ngữ cảnh không phải thẻ (ví dụ: trang nền hoặc chế độ xem cửa sổ bật lên).
Tham số
Giá trị trả về
-
Promise<Tab | undefined>
Chrome 88 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 để có 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. Lời hứa sẽ được phân giải bằng cùng một loại được truyền đến lệnh gọi lại.
getSelected()
chrome.tabs.getSelected(
windowId?: number,
callback?: function,
)
Vui lòng sử dụng tabs.query
{active: true}
.
Lấy thẻ được chọn trong cửa sổ được chỉ định.
Tham số
-
windowId
số không bắt buộc
Giá trị mặc định là cửa sổ hiện tại.
-
số gọi lại
hàm không bắt buộc
Tham số
callback
sẽ có dạng như sau:(tab: Tab) => void
-
tab
-
Giá trị trả về
-
Promise<Tab>
Chrome 88 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 để có 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. Lời hứa sẽ được phân giải bằng cùng một loại được truyền đến lệnh gọi lại.
getZoom()
chrome.tabs.getZoom(
tabId?: number,
callback?: function,
)
Lấy hệ số thu phóng hiện tại của một thẻ được chỉ định.
Tham số
-
tabId
số không bắt buộc
Mã của thẻ để lấy hệ số thu phóng hiện tại; giá trị mặc định là thẻ đang hoạt động của cửa sổ hiện tại.
-
số gọi lại
hàm không bắt buộc
Tham số
callback
sẽ có dạng như sau:(zoomFactor: number) => void
-
zoomFactor
number
Hệ số thu phóng hiện tại của thẻ.
-
Giá trị trả về
-
Hứa hẹn<number>
Chrome 88 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 để có 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. Lời hứa sẽ được phân giải bằng cùng một loại được truyền đến lệnh gọi lại.
getZoomSettings()
chrome.tabs.getZoomSettings(
tabId?: number,
callback?: function,
)
Lấy cài đặt thu phóng hiện tại của một thẻ được chỉ định.
Tham số
-
tabId
số không bắt buộc
Mã của thẻ dùng để lấy chế độ cài đặt thu phóng hiện tại; mặc định là thẻ đang hoạt động của cửa sổ hiện tại.
-
số gọi lại
hàm không bắt buộc
Tham số
callback
sẽ có dạng như sau:(zoomSettings: ZoomSettings) => void
-
zoomSettings
Cài đặt thu phóng hiện tại của thẻ.
-
Giá trị trả về
-
Promise<ZoomSettings>
Chrome 88 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 để có 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. Lời hứa sẽ được phân giải bằng cùng một loại được truyền đến lệnh gọi lại.
goBack()
chrome.tabs.goBack(
tabId?: number,
callback?: function,
)
Quay lại trang trước (nếu có).
Tham số
-
tabId
số không bắt buộc
Mã của thẻ để điều hướng trở lại; mặc định là thẻ đã chọn của cửa sổ hiện tại.
-
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ề
-
Promise<void>
Chrome 88 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 để có 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. Lời hứa sẽ được phân giải bằng cùng một loại được truyền đến lệnh gọi lại.
goForward()
chrome.tabs.goForward(
tabId?: number,
callback?: function,
)
Chuyển sang trang tiếp theo, nếu có.
Tham số
-
tabId
số không bắt buộc
Mã của thẻ để điều hướng tiến; mặc định là thẻ đã chọn của cửa sổ hiện tại.
-
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ề
-
Promise<void>
Chrome 88 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 để có 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. Lời hứa sẽ được phân giải bằng cùng một loại được truyền đến lệnh gọi lại.
group()
chrome.tabs.group(
options: object,
callback?: function,
)
Thêm một hoặc nhiều thẻ vào một nhóm cụ thể, hoặc nếu không có nhóm nào được chỉ định, thì các thẻ đã cho sẽ được thêm vào một nhóm mới tạo.
Tham số
-
tùy chọn
đối tượng
-
createProperties
đối tượng không bắt buộc
Các cấu hình để tạo nhóm. Không thể sử dụng nếu groupId đã được chỉ định.
-
windowId
số không bắt buộc
Cửa sổ của nhóm mới. Mặc định là cửa sổ hiện tại.
-
-
groupId
số không bắt buộc
Mã của nhóm để thêm thẻ. Nếu không chỉ định, một nhóm mới sẽ được tạo.
-
tabIds
số | [số, ...số[]]
Mã thẻ hoặc danh sách mã thẻ cần thêm vào nhóm được chỉ định.
-
-
số gọi lại
hàm không bắt buộc
Tham số
callback
sẽ có dạng như sau:(groupId: number) => void
-
groupId
number
Mã của nhóm mà các thẻ được thêm vào.
-
Giá trị trả về
-
Hứa hẹn<number>
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 để có 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. Lời hứa sẽ được phân giải bằng cùng một loại được truyền đến lệnh gọi lại.
highlight()
chrome.tabs.highlight(
highlightInfo: object,
callback?: function,
)
Làm nổi bật các thẻ nhất định và tập trung vào thẻ đầu tiên của nhóm. Có vẻ như sẽ không có tác dụng gì nếu thẻ được chỉ định hiện đang hoạt động.
Tham số
-
highlightInfo
đối tượng
-
thẻ
số | số[]
Một hoặc nhiều chỉ mục thẻ cần đánh dấu.
-
windowId
số không bắt buộc
Cửa sổ chứa các thẻ.
-
-
số gọi lại
hàm không bắt buộc
Tham số
callback
sẽ có dạng như sau:(window: Window) => void
-
cửa sổ
Chứa thông tin chi tiết về cửa sổ có các thẻ được làm nổi bật.
-
Giá trị trả về
-
Hứa hẹn<windows.Window>
Chrome 88 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 để có 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. Lời hứa sẽ được phân giải bằng cùng một loại được truyền đến lệnh gọi lại.
insertCSS()
chrome.tabs.insertCSS(
tabId?: number,
details: InjectDetails,
callback?: function,
)
Thay thế bằng scripting.insertCSS
trong Manifest V3.
Chèn CSS vào một trang. Bạn có thể xoá các kiểu được chèn bằng phương thức này bằng scripting.removeCSS
. Để biết thông tin chi tiết, hãy xem phần chèn có lập trình trong tài liệu tập lệnh nội dung.
Tham số
-
tabId
số không bắt buộc
Mã của thẻ chèn CSS; mặc định là thẻ đang hoạt động của cửa sổ hiện tại.
-
chi tiết
Chi tiết về văn bản CSS cần chèn. Bạn phải đặt mã hoặc thuộc tính tệp, nhưng không thể đặt cả hai cùng một lúc.
-
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ề
-
Promise<void>
Chrome 88 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 để có 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. Lời hứa sẽ được phân giải bằng cùng một loại được truyền đến lệnh gọi lại.
move()
chrome.tabs.move(
tabIds: number | number[],
moveProperties: object,
callback?: function,
)
Di chuyển một hoặc nhiều thẻ đến vị trí mới trong cửa sổ hoặc cửa sổ mới. Lưu ý rằng bạn chỉ có thể di chuyển thẻ sang và từ cửa sổ thông thường (window.type = "normal").
Tham số
-
tabIds
số | số[]
Mã thẻ hoặc danh sách mã thẻ cần di chuyển.
-
moveProperties
đối tượng
-
index
number
Vị trí để di chuyển cửa sổ tới. Sử dụng
-1
để đặt thẻ ở cuối cửa sổ. -
windowId
số không bắt buộc
Giá trị mặc định là cửa sổ đang mở thẻ.
-
-
số gọi lại
hàm không bắt buộc
Tham số
callback
sẽ có dạng như sau:(tabs: Tab | Tab[]) => void
Giá trị trả về
-
Chrome 88 trở lên
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 để có 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. Lời hứa sẽ được phân giải bằng cùng một loại được truyền đến lệnh gọi lại.
query()
chrome.tabs.query(
queryInfo: object,
callback?: function,
)
Lấy tất cả các thẻ có thuộc tính đã chỉ định hoặc tất cả các thẻ nếu không có thuộc tính nào được chỉ định.
Tham số
-
queryInfo
đối tượng
-
hoạt động
boolean không bắt buộc
Liệu các thẻ có đang hoạt động trong cửa sổ hay không.
-
audible
boolean không bắt buộc
Chrome 45 trở lênLiệu các thẻ có thể nghe được hay không.
-
autoDiscardable
boolean không bắt buộc
Chrome 54 trở lênLiệu trình duyệt có thể tự động hủy thẻ khi tài nguyên sắp hết hay không.
-
currentWindow
boolean không bắt buộc
Liệu các thẻ có nằm trong cửa sổ hiện tại hay không.
-
đã hủy
boolean không bắt buộc
Chrome 54 trở lênLiệu các thẻ có bị huỷ hay không. Thẻ bị loại bỏ là thẻ có nội dung đã được huỷ tải khỏi bộ nhớ nhưng vẫn hiển thị trong thanh thẻ. Nội dung của thiết bị sẽ được tải lại vào lần kích hoạt tiếp theo.
-
groupId
số không bắt buộc
Chrome 88 trở lênMã của nhóm chứa các thẻ hoặc
tabGroups.TAB_GROUP_ID_NONE
đối với các thẻ chưa được nhóm. -
được làm nổi bật
boolean không bắt buộc
Liệu các thẻ có được đánh dấu hay không.
-
index
số không bắt buộc
Vị trí của các thẻ bên trong cửa sổ.
-
lastFocusedWindow
boolean không bắt buộc
Liệu các thẻ có nằm trong cửa sổ được lấy tiêu điểm gần đây nhất hay không.
-
đã tắt tiếng
boolean không bắt buộc
Chrome 45 trở lênLiệu các thẻ có bị tắt tiếng hay không.
-
đã ghim
boolean không bắt buộc
Liệu các thẻ có được ghim hay không.
-
status
TabStatus không bắt buộc
Trạng thái tải thẻ.
-
title
chuỗi không bắt buộc
Khớp tiêu đề trang với mẫu. Thuộc tính này sẽ bị bỏ qua nếu tiện ích không có quyền
"tabs"
. -
url
chuỗi | chuỗi[] không bắt buộc
So khớp các thẻ với một hoặc nhiều mẫu URL. Giá trị nhận dạng mảnh không khớp. Thuộc tính này sẽ bị bỏ qua nếu tiện ích không có quyền
"tabs"
. -
windowId
số không bắt buộc
Mã của cửa sổ mẹ hoặc biểu tượng
windows.WINDOW_ID_CURRENT
của cửa sổ hiện tại. -
windowType
WindowType không bắt buộc
Loại cửa sổ chứa các thẻ.
-
-
số gọi lại
hàm không bắt buộc
Tham số
callback
sẽ có dạng như sau:(result: Tab[]) => void
-
kết quả
Thẻ[]
-
Giá trị trả về
-
Promise<Tab[]>
Chrome 88 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 để có 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. Lời hứa sẽ được phân giải bằng cùng một loại được truyền đến lệnh gọi lại.
reload()
chrome.tabs.reload(
tabId?: number,
reloadProperties?: object,
callback?: function,
)
Tải lại một thẻ.
Tham số
-
tabId
số không bắt buộc
Mã của thẻ cần tải lại; mặc định là thẻ đã chọn của cửa sổ hiện tại.
-
reloadProperties
đối tượng không bắt buộc
-
bypassCache
boolean không bắt buộc
Liệu có bỏ qua chức năng lưu vào bộ nhớ đệm cục bộ hay không. Giá trị mặc định là
false
.
-
-
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ề
-
Promise<void>
Chrome 88 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 để có 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. Lời hứa sẽ được phân giải bằng cùng một loại được truyền đến lệnh gọi lại.
remove()
chrome.tabs.remove(
tabIds: number | number[],
callback?: function,
)
Đóng một hoặc nhiều thẻ.
Tham số
-
tabIds
số | số[]
Mã thẻ hoặc danh sách mã thẻ cần đó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ề
-
Promise<void>
Chrome 88 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 để có 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. Lời hứa sẽ được phân giải bằng cùng một loại được truyền đến lệnh gọi lại.
removeCSS()
chrome.tabs.removeCSS(
tabId?: number,
details: DeleteInjectionDetails,
callback?: function,
)
Thay thế bằng scripting.removeCSS
trong Manifest V3.
Xoá khỏi một CSS trang trước đó đã được lệnh gọi đến scripting.insertCSS
chèn vào.
Tham số
-
tabId
số không bắt buộc
Mã của thẻ cần xoá CSS; mặc định là thẻ đang hoạt động của cửa sổ hiện tại.
-
chi tiết
Thông tin chi tiết về văn bản CSS cần xoá. Bạn phải đặt mã hoặc thuộc tính tệp, nhưng không thể đặt cả hai cùng một lúc.
-
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ề
-
Promise<void>
Chrome 88 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 để có 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. Lời hứa sẽ được phân giải bằng cùng một loại được truyền đến lệnh gọi lại.
sendMessage()
chrome.tabs.sendMessage(
tabId: number,
message: any,
options?: object,
callback?: function,
)
Gửi một tin nhắn đến (các) tập lệnh nội dung trong thẻ được chỉ định, kèm theo lệnh gọi lại (không bắt buộc) để chạy khi phản hồi được gửi lại. Sự kiện runtime.onMessage
được kích hoạt trong mỗi tập lệnh nội dung chạy trong thẻ được chỉ định cho tiện ích hiện tại.
Tham số
-
tabId
number
-
tin nhắn
Bất kỳ
Tin nhắn cần gửi. Thông báo này phải là một đối tượng có thể JSON.
-
tùy chọn
đối tượng không bắt buộc
-
số gọi lại
hàm không bắt buộc
Chrome 99 trở lênTham số
callback
sẽ có dạng như sau:(response: any) => void
-
phản hồi
Bất kỳ
Đối tượng phản hồi JSON do trình xử lý thông báo gửi. Nếu xảy ra lỗi trong khi kết nối đến thẻ đã chỉ định, thì lệnh gọi lại sẽ được gọi mà không có đối số và
runtime.lastError
được đặt thành thông báo lỗi.
-
Giá trị trả về
-
Hứa hẹn<any>
Chrome 99 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 để có 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. Lời hứa sẽ được phân giải bằng cùng một loại được truyền đến lệnh gọi lại.
sendRequest()
chrome.tabs.sendRequest(
tabId: number,
request: any,
callback?: function,
)
Vui lòng sử dụng runtime.sendMessage
.
Gửi một yêu cầu duy nhất đến (các) tập lệnh nội dung trong thẻ được chỉ định, kèm theo một lệnh gọi lại (không bắt buộc) để chạy khi một phản hồi được gửi lại. Sự kiện extension.onRequest
được kích hoạt trong mỗi tập lệnh nội dung chạy trong thẻ được chỉ định cho tiện ích hiện tại.
Tham số
-
tabId
number
-
request
Bất kỳ
-
số gọi lại
hàm không bắt buộc
Chrome 99 trở lênTham số
callback
sẽ có dạng như sau:(response: any) => void
-
phản hồi
Bất kỳ
Đối tượng phản hồi JSON do trình xử lý yêu cầu gửi. Nếu xảy ra lỗi trong khi kết nối đến thẻ đã chỉ định, thì lệnh gọi lại sẽ được gọi mà không có đối số và
runtime.lastError
được đặt thành thông báo lỗi.
-
Giá trị trả về
-
Hứa hẹn<any>
Chrome 99 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 để có 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. Lời hứa sẽ được phân giải bằng cùng một loại được truyền đến lệnh gọi lại.
setZoom()
chrome.tabs.setZoom(
tabId?: number,
zoomFactor: number,
callback?: function,
)
Thu phóng một thẻ được chỉ định.
Tham số
-
tabId
số không bắt buộc
Mã thẻ cần thu phóng; mặc định là thẻ đang hoạt động của cửa sổ hiện tại.
-
zoomFactor
number
Hệ số thu phóng mới. Giá trị
0
đặt thẻ thành hệ số thu phóng mặc định hiện tại. Các giá trị lớn hơn0
chỉ định hệ số thu phóng (có thể không mặc định) cho thẻ. -
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ề
-
Promise<void>
Chrome 88 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 để có 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. Lời hứa sẽ được phân giải bằng cùng một loại được truyền đến lệnh gọi lại.
setZoomSettings()
chrome.tabs.setZoomSettings(
tabId?: number,
zoomSettings: ZoomSettings,
callback?: function,
)
Đặt chế độ cài đặt thu phóng cho một thẻ được chỉ định. Thẻ này sẽ xác định cách xử lý các thay đổi về mức thu phóng. Các chế độ cài đặt này được đặt lại về mặc định trong khi di chuyển thẻ.
Tham số
-
tabId
số không bắt buộc
Mã của thẻ để thay đổi chế độ cài đặt thu phóng; mặc định là thẻ đang hoạt động của cửa sổ hiện tại.
-
zoomSettings
Xác định cách xử lý các thay đổi về mức thu phóng và phạm vi xử lý.
-
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ề
-
Promise<void>
Chrome 88 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 để có 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. Lời hứa sẽ được phân giải bằng cùng một loại được truyền đến lệnh gọi lại.
ungroup()
chrome.tabs.ungroup(
tabIds: number | [number, ...number[]],
callback?: function,
)
Xoá một hoặc nhiều thẻ khỏi các nhóm tương ứng. Nếu bất kỳ nhóm nào bị trống, các nhóm đó sẽ bị xoá.
Tham số
-
tabIds
số | [số, ...số[]]
Mã thẻ hoặc danh sách mã thẻ cần xoá khỏi các nhóm tương ứ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ề
-
Promise<void>
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 để có 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. Lời hứa sẽ được phân giải bằng cùng một loại được truyền đến lệnh gọi lại.
update()
chrome.tabs.update(
tabId?: number,
updateProperties: object,
callback?: function,
)
Sửa đổi các thuộc tính của một thẻ. Những thuộc tính không được chỉ định trong updateProperties
sẽ không được sửa đổi.
Tham số
-
tabId
số không bắt buộc
Mặc định là thẻ đã chọn của cửa sổ hiện tại.
-
updateProperties
đối tượng
-
hoạt động
boolean không bắt buộc
Liệu thẻ có đang hoạt động hay không. Không ảnh hưởng đến việc cửa sổ có được lấy tiêu điểm hay không (xem
windows.update
). -
autoDiscardable
boolean không bắt buộc
Chrome 54 trở lênLiệu trình duyệt có tự động hủy thẻ khi tài nguyên sắp hết hay không.
-
được làm nổi bật
boolean không bắt buộc
Thêm hoặc xoá thẻ khỏi lựa chọn hiện tại.
-
đã tắt tiếng
boolean không bắt buộc
Chrome 45 trở lênLiệu có nên tắt tiếng thẻ hay không.
-
openerTabId
số không bắt buộc
Mã của thẻ đã mở thẻ này. Nếu được chỉ định, thẻ trình mở phải nằm trong cùng một cửa sổ với thẻ này.
-
đã ghim
boolean không bắt buộc
Liệu thẻ có nên được ghim hay không.
-
đã chọn
boolean không bắt buộc
Không dùng nữaVui lòng sử dụng được đánh dấu.
Liệu có nên chọn thẻ hay không.
-
url
chuỗi không bắt buộc
URL để điều hướng thẻ đến. URL JavaScript không được hỗ trợ. Hãy dùng
scripting.executeScript
để thay thế.
-
-
số gọi lại
hàm không bắt buộc
Tham số
callback
sẽ có dạng như sau:(tab?: Tab) => void
Giá trị trả về
-
Promise<Tab | undefined>
Chrome 88 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 để có 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. Lời hứa sẽ được phân giải bằng cùng một loại được truyền đến lệnh gọi lại.
Sự kiện
onActivated
chrome.tabs.onActivated.addListener(
callback: function,
)
Kích hoạt khi thẻ đang hoạt động trong một cửa sổ thay đổi. Lưu ý rằng có thể không đặt URL của thẻ tại thời điểm sự kiện này kích hoạt, nhưng bạn có thể nghe các sự kiện onUpdated để được thông báo khi URL được đặt.
Tham số
-
số gọi lại
hàm
Tham số
callback
sẽ có dạng như sau:(activeInfo: object) => void
-
activeInfo
đối tượng
-
tabId
number
Mã của thẻ đã hoạt động.
-
windowId
number
Mã cửa sổ mà thẻ đang hoạt động đã thay đổi bên trong.
-
-
onActiveChanged
chrome.tabs.onActiveChanged.addListener(
callback: function,
)
Vui lòng sử dụng tabs.onActivated
.
Kích hoạt khi thẻ đã chọn trong một cửa sổ thay đổi. Xin lưu ý rằng bạn không thể đặt URL của thẻ tại thời điểm sự kiện này kích hoạt, nhưng bạn có thể nghe các sự kiện tabs.onUpdated
để nhận thông báo khi URL được đặt.
Tham số
-
số gọi lại
hàm
Tham số
callback
sẽ có dạng như sau:(tabId: number, selectInfo: object) => void
-
tabId
number
-
selectInfo
đối tượng
-
windowId
number
Mã của cửa sổ mà thẻ được chọn đã thay đổi bên trong.
-
-
onAttached
chrome.tabs.onAttached.addListener(
callback: function,
)
Được kích hoạt khi một thẻ được đính kèm vào một cửa sổ; ví dụ: do thẻ được di chuyển giữa các cửa sổ.
Tham số
-
số gọi lại
hàm
Tham số
callback
sẽ có dạng như sau:(tabId: number, attachInfo: object) => void
-
tabId
number
-
attachInfo
đối tượng
-
newPosition
number
-
newWindowId
number
-
-
onCreated
chrome.tabs.onCreated.addListener(
callback: function,
)
Được kích hoạt khi một thẻ được tạo. Xin lưu ý rằng URL của thẻ và tư cách thành viên nhóm thẻ có thể không được đặt tại thời điểm kích hoạt sự kiện này, nhưng bạn có thể nghe các sự kiện onUpdated để nhận thông báo khi URL được đặt hoặc thẻ được thêm vào một nhóm thẻ.
onDetached
chrome.tabs.onDetached.addListener(
callback: function,
)
Được kích hoạt khi thẻ được tách khỏi một cửa sổ; ví dụ: do thẻ được di chuyển giữa các cửa sổ.
Tham số
-
số gọi lại
hàm
Tham số
callback
sẽ có dạng như sau:(tabId: number, detachInfo: object) => void
-
tabId
number
-
detachInfo
đối tượng
-
oldPosition
number
-
oldWindowId
number
-
-
onHighlightChanged
chrome.tabs.onHighlightChanged.addListener(
callback: function,
)
Vui lòng sử dụng tabs.onHighlighted
.
Được kích hoạt khi các thẻ được đánh dấu hoặc đã chọn trong một cửa sổ thay đổi.
Tham số
-
số gọi lại
hàm
Tham số
callback
sẽ có dạng như sau:(selectInfo: object) => void
-
selectInfo
đối tượng
-
tabIds
số[]
Tất cả các thẻ được đánh dấu trong cửa sổ.
-
windowId
number
Cửa sổ có các thẻ đã thay đổi.
-
-
onHighlighted
chrome.tabs.onHighlighted.addListener(
callback: function,
)
Được kích hoạt khi các thẻ được đánh dấu hoặc đã chọn trong một cửa sổ thay đổi.
Tham số
-
số gọi lại
hàm
Tham số
callback
sẽ có dạng như sau:(highlightInfo: object) => void
-
highlightInfo
đối tượng
-
tabIds
số[]
Tất cả các thẻ được đánh dấu trong cửa sổ.
-
windowId
number
Cửa sổ có các thẻ đã thay đổi.
-
-
onMoved
chrome.tabs.onMoved.addListener(
callback: function,
)
Được kích hoạt khi một thẻ được di chuyển trong một cửa sổ. Chỉ một sự kiện di chuyển được kích hoạt, đại diện cho thẻ mà người dùng đã trực tiếp di chuyển. Sự kiện di chuyển không được kích hoạt cho các thẻ khác phải di chuyển theo thẻ được di chuyển theo cách thủ công. Sự kiện này không được kích hoạt khi một thẻ được di chuyển giữa các cửa sổ. Để biết thông tin chi tiết, hãy xem tabs.onDetached
.
Tham số
-
số gọi lại
hàm
Tham số
callback
sẽ có dạng như sau:(tabId: number, moveInfo: object) => void
-
tabId
number
-
moveInfo
đối tượng
-
fromIndex
number
-
toIndex
number
-
windowId
number
-
-
onRemoved
chrome.tabs.onRemoved.addListener(
callback: function,
)
Được kích hoạt khi một thẻ được đóng.
Tham số
-
số gọi lại
hàm
Tham số
callback
sẽ có dạng như sau:(tabId: number, removeInfo: object) => void
-
tabId
number
-
removeInfo
đối tượng
-
isWindowClosing
boolean
Đúng khi thẻ bị đóng do cửa sổ mẹ của thẻ đã đóng.
-
windowId
number
Cửa sổ có thẻ đã đóng.
-
-
onReplaced
chrome.tabs.onReplaced.addListener(
callback: function,
)
Được kích hoạt khi một thẻ được thay thế bằng một thẻ khác do kết xuất trước hoặc tức thì.
Tham số
-
số gọi lại
hàm
Tham số
callback
sẽ có dạng như sau:(addedTabId: number, removedTabId: number) => void
-
addedTabId
number
-
removedTabId
number
-
onSelectionChanged
chrome.tabs.onSelectionChanged.addListener(
callback: function,
)
Vui lòng sử dụng tabs.onActivated
.
Kích hoạt khi thẻ đã chọn trong một cửa sổ thay đổi.
Tham số
-
số gọi lại
hàm
Tham số
callback
sẽ có dạng như sau:(tabId: number, selectInfo: object) => void
-
tabId
number
-
selectInfo
đối tượng
-
windowId
number
Mã của cửa sổ mà thẻ được chọn đã thay đổi bên trong.
-
-
onUpdated
chrome.tabs.onUpdated.addListener(
callback: function,
)
Được kích hoạt khi một thẻ được cập nhật.
Tham số
-
số gọi lại
hàm
Tham số
callback
sẽ có dạng như sau:(tabId: number, changeInfo: object, tab: Tab) => void
-
tabId
number
-
changeInfo
đối tượng
-
audible
boolean không bắt buộc
Chrome 45 trở lênTrạng thái âm thanh mới của thẻ.
-
autoDiscardable
boolean không bắt buộc
Chrome 54 trở lênTrạng thái tự động loại bỏ mới của thẻ.
-
đã hủy
boolean không bắt buộc
Chrome 54 trở lênTrạng thái bị loại bỏ mới của thẻ.
-
favIconUrl
chuỗi không bắt buộc
URL biểu tượng trang web mới của thẻ.
-
groupId
số không bắt buộc
Chrome 88 trở lênNhóm mới của thẻ.
-
mutedInfo
MutedInfo (Thông tin ẩn danh) không bắt buộc
Chrome 46 trở lênTrạng thái tắt tiếng mới của thẻ và lý do thay đổi.
-
đã ghim
boolean không bắt buộc
Trạng thái đã ghim mới của thẻ.
-
status
TabStatus không bắt buộc
Trạng thái tải của thẻ.
-
title
chuỗi không bắt buộc
Chrome 48 trở lênTiêu đề mới của thẻ.
-
url
chuỗi không bắt buộc
URL của thẻ nếu đã thay đổi.
-
-
tab
-
onZoomChange
chrome.tabs.onZoomChange.addListener(
callback: function,
)
Được kích hoạt khi một thẻ được thu phóng.
Tham số
-
số gọi lại
hàm
Tham số
callback
sẽ có dạng như sau:(ZoomChangeInfo: object) => void
-
ZoomChangeInfo
đối tượng
-
newZoomFactor
number
-
oldZoomFactor
number
-
tabId
number
-
zoomSettings
-
-