Mô tả
Sử 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.
Tabs API 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 quyền nào để sử dụng. Ví dụ: tạo thẻ mới, tải lại thẻ, 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 Tabs API.
- Quyền "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 đó, API 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 một tiện ích đọc và truy vấn 4 thuộc tính
tabs.Tab
nhạy cảm của thẻ trùng khớp. Các thẻ này 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 cho tiện ích 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ủ lưu trữ,activeTab
không kích hoạt cảnh báo nào.{ "name": "My extension", ... "permissions": [ "activeTab" ], ... }
Trường hợp sử dụng
Các phần sau đây minh hoạ một số trường hợp sử dụng phổ biến.
Mở trang tiện ích trong một thẻ mới
Một mẫu phổ biến cho các tiện ích là mở trang giới thiệu trong một thẻ mới khi cài đặt tiện ích. Ví dụ sau đây 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"
});
}
});
Lấy thẻ hiện tại
Ví dụ này minh hoạ cách worker dịch vụ của tiện ích có thể truy xuất thẻ đang hoạt động từ cửa sổ đang đượ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ẻ đã 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 thấy cách di chuyển một thẻ trong khi thao tác kéo có thể đang diễn ra 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 thao tác kéo đang diễn ra.
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 worker 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 cách sử dụ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ề phần mở rộng
Để xem thêm các bản minh hoạ về tiện ích Tabs API, 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 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 phần mở rộng đã thay đổi trạng thái tắt tiếng. Không được đặt nếu phần mở rộng không phải là lý do trạng thái tắt tiếng thay đổi gần đây nhất.
-
đã tắt tiếng
boolean
Thẻ có bị tắt tiếng (không phát được âm thanh) hay không. Thẻ có thể bị tắt tiếng ngay cả khi chưa phát hoặc 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 bao giờ thay đổi.
MutedInfoReason
Một sự kiện đã gây ra thay đổi trạng thái tắt tiếng.
Enum
"user"
Một hành động nhập của người dùng đã đặt trạng thái tắt tiếng.
"capture"
Bắt đầu chụp thẻ, 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 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ó phát ra âm thanh trong vài giây qua hay không (nhưng có thể bạn không nghe thấy nếu thẻ đó cũng bị 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 loại bỏ 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ị loại bỏ hay không. Thẻ bị loại bỏ là thẻ có nội dung đã được tải xuống bộ nhớ nhưng vẫn hiển thị trong dải thẻ. Nội dung của thẻ sẽ được tải lại vào lần tiếp theo thẻ được kích hoạt.
-
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 có quyền
"tabs"
. Giá trị này cũng có thể là một chuỗi trống nếu thẻ đang tải. -
bị đóng băng
boolean
Đang chờ xử lýThẻ có bị treo hay không. Thẻ bị khoá không thể thực thi các tác vụ, bao gồm cả trình xử lý sự kiện hoặc bộ hẹn giờ. Thẻ này xuất hiện trong dải thẻ và nội dung của thẻ được tải trong bộ nhớ. Tài khoản sẽ được huỷ trạng thái đóng băng khi kích hoạt.
-
groupId
số
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
Liệu thẻ có được làm nổi bật 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ã nhận dạng; 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 ứng dụng và cửa sổ công cụ phát triển. -
ẩn danh
boolean
Liệu thẻ có nằm trong cửa sổ ẩn danh hay không.
-
index
số
Chỉ mục dựa trên 0 của thẻ trong cửa sổ.
-
lastAccessed
số
Chrome 121 trở lênLần truy cập gần đây nhất 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 không bắt buộc
Chrome 46 trở lênTrạng thái tắt tiếng của thẻ và lý do 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 được 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 thao tác điều hướng đang chờ xử lý. -
được ghim
boolean
Liệu 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 dùng để xác định riêng một thẻ lấy được từ API
sessions
. -
trạng thái
TabStatus không bắt buộc
Trạng thái tải của thẻ.
-
tiêu đề
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 có quyền
"tabs"
. -
url
chuỗi không bắt buộc
URL đã cam kết gần đây nhất của 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
số
Mã nhận dạng của cửa sổ chứa thẻ.
TabStatus
Trạng thái tải của thẻ.
Enum
"unloaded"
"đang tải"
"complete"
WindowType
Loại cửa sổ.
Enum
"bình thường"
"popup"
"panel"
"app"
"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 nào.
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 đến tabs.getZoomSettings.
-
chế độ
ZoomSettingsMode không bắt buộc
Xác định cách xử lý các thay đổi về thu phóng, tức là thực thể nào chịu trách nhiệm về tỷ lệ thực tế của trang; mặc định là
automatic
. -
phạm vi
ZoomSettingsScope không bắt buộc
Xác định xem các thay đổi về mức thu phóng 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àper-tab
nếu không.
ZoomSettingsMode
Xác định cách xử lý các thay đổi về thu phóng, tức là thực thể nào chịu trách nhiệm về tỷ lệ thực tế của trang; mặc định là automatic
.
Enum
"tự động"
Trình duyệt sẽ tự động xử lý các thay đổi về chế độ thu phóng.
"manual"
Ghi đè chế độ tự động xử lý các thay đổi về thu phóng. Sự kiện onZoomChange
vẫn sẽ được gửi và trách nhiệm của tiện ích là 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ợ tính năng thu phóng per-origin
, do đó bỏ qua chế độ cài đặt thu phóng scope
và giả định là per-tab
.
"disabled"
Tắt tất cả chế độ thu phóng trong thẻ. Thẻ sẽ quay lại mức thu phóng mặc định và tất cả các thay đổi về mức thu phóng sẽ bị bỏ qua.
ZoomSettingsScope
Xác định xem các thay đổi về mức thu phóng 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à per-tab
nếu không.
Enum
"theo nguồn gốc"
Các thay đổi về chế độ 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 chuyển đến cùng một nguồn gốc đó cũng được thu phóng. Hơn nữa, các thay đổi về tỷ lệ thu phóng per-origin
được lưu cùng với nguồn gốc, nghĩa là khi điều hướng đến các trang khác trong cùng một nguồn gốc, tất cả các trang đó đều được thu phóng theo cùng một tỷ lệ thu phóng. Phạm vi per-origin
chỉ có trong chế độ automatic
.
"trên mỗi thẻ"
Các thay đổi về mức thu phóng chỉ có hiệu lực trong thẻ này và các thay đổi về mức thu phóng trong các thẻ khác không ảnh hưởng đến mức thu phóng của thẻ này. Ngoài ra, các thay đổi về mức thu phóng per-tab
sẽ đượ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 bằng hệ số thu phóng per-origin
.
Thuộc tính
MAX_CAPTURE_VISIBLE_TAB_CALLS_PER_SECOND
Số lần tối đa có thể gọi captureVisibleTab
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ã nhận dạng thể hiện việc không có thẻ trình duyệt.
Giá trị
-1
TAB_INDEX_NONE
Chỉ mục thể hiện việc không có chỉ mục thẻ trong tab_strip.
Giá trị
-1
Phương thức
captureVisibleTab()
chrome.tabs.captureVisibleTab(
windowId?: number,
options?: ImageDetails,
callback?: function,
)
Ghi lại khu vực hiển thị của thẻ đang hoạt động trong cửa sổ đã 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 thường có thể truy cập, phương thức này cho phép tiện ích ghi lại các trang web nhạy cảm bị hạn chế, bao gồm cả các trang chrome:-scheme, các trang của tiện ích khác và URL data:. Bạn chỉ có thể ghi lại những trang web nhạy cảm này bằng quyền activeTab. Bạn chỉ có thể thu thập URL của tệp 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. Mặc định là cửa sổ hiện tại.
-
tùy chọn
ImageDetails không bắt buộc
-
lệnh gọi lại
hàm không bắt buộc
Tham số
callback
có dạng như sau:(dataUrl: string) => void
-
dataUrl
chuỗi
URL dữ liệu mã hoá hình ảnh của khu vực hiển thị của thẻ đã chụp. Có thể được chỉ định cho thuộc tính "src" của phần tử
img
HTML để hiển thị.
-
Giá trị trả về
-
Promise<string>
Chrome 88 trở lênLời hứa được hỗ trợ trong Tệp kê khai V3 trở lên, nhưng lệnh gọi lại được cung cấp để đảm bảo 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ẽ 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ẻ đã 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ẻ đã 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 qua tập lệnh nội dung.
Tham số
-
tabId
số
-
connectInfo
đối tượng không bắt buộc
-
documentId
chuỗi không bắt buộc
Chrome 106 trở lênMở một cổng đến một tài liệu cụ thể được xác định bằng
documentId
thay vì tất cả các khung trong thẻ. -
frameId
số không bắt buộc
Mở cổng đến một khung cụ thể được xác định bằng
frameId
thay vì tất cả khung trong thẻ. -
tên
chuỗi không bắt buộc
Được truyền vào onConnect cho các tập lệnh nội dung đang nghe 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ẻ đã 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 làm tiêu điểm hay không (xem
windows.update
). Mặc định làtrue
. -
index
số không bắt buộc
Vị trí của thẻ trong cửa sổ. Giá trị được cung cấp được cố định 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ẻ trình mở phải nằm trong cùng một cửa sổ với thẻ mới tạo.
-
được ghim
boolean không bắt buộc
Liệu thẻ có đượ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 trạng thái đang hoạt động.
Liệu 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. URL đủ điều kiện phải bao gồm một giao thức (tức là "http://www.google.com", chứ không phải "www.google.com"). URL tương đối là URL tương ứng với trang hiện tại trong tiện ích. Mặc định là Trang thẻ mới.
-
windowId
số không bắt buộc
Cửa sổ để tạo thẻ mới. Mặc định là cửa sổ hiện tại.
-
-
lệnh gọi lại
hàm không bắt buộc
Tham số
callback
có dạng như sau:(tab: Tab) => void
-
phím tab
Thẻ đã tạo.
-
Giá trị trả về
-
Promise<Tab>
Chrome 88 trở lênLời hứa được hỗ trợ trong Tệp kê khai V3 trở lên, nhưng lệnh gọi lại được cung cấp để đảm bảo 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ẽ 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.
-
lệnh gọi lại
hàm không bắt buộc
Tham số
callback
có dạng như sau:(language: string) => void
-
language
chuỗi
Mã ngôn ngữ ISO như
en
hoặcfr
. Để xem danh sách đầy đủ các ngôn ngữ được phương thức này hỗ trợ, hãy xem kLanguageInfoTable. Các cột thứ hai đến thứ tư được kiểm tra và giá trị đầu tiên không phải NULL sẽ được trả về, ngoại trừ tiếng Trung giản thể, trong đózh-CN
sẽ đượ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ề
-
Promise<string>
Chrome 88 trở lênLời hứa được hỗ trợ trong Tệp kê khai V3 trở lên, nhưng lệnh gọi lại được cung cấp để đảm bảo 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ẽ 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 bộ nhớ. Các thẻ đã loại bỏ vẫn hiển thị trên dải thẻ và được tải lại khi được 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ị loại bỏ trừ phi thẻ đó đang hoạt động hoặc đã bị loại bỏ. 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ỏ.
-
lệnh gọi lại
hàm không bắt buộc
Tham số
callback
có dạng như sau:(tab?: Tab) => void
-
phím tab
Tab không bắt buộc
Thẻ đã loại bỏ, nếu thẻ đó đã được loại bỏ thành công; không xác định nếu không.
-
Giá trị trả về
-
Promise<Tab | undefined>
Chrome 88 trở lênLời hứa được hỗ trợ trong Tệp kê khai V3 trở lên, nhưng lệnh gọi lại được cung cấp để đảm bảo 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ẽ 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
số
Mã của thẻ cần sao chép.
-
lệnh gọi lại
hàm không bắt buộc
Tham số
callback
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 Tệp kê khai V3 trở lên, nhưng lệnh gọi lại được cung cấp để đảm bảo 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ẽ 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,
)
Được 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 theo phương thức lập trình trong tài liệu về tập lệnh nội dung.
Tham số
-
tabId
số không bắt buộc
Mã nhận dạng 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
Thông tin 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 được đặt cả hai cùng lúc.
-
lệnh gọi lại
hàm không bắt buộc
Tham số
callback
có dạng như sau:(result?: any[]) => void
-
kết quả
any[] 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ề
-
Promise<any[] | undefined>
Chrome 88 trở lênLời hứa được hỗ trợ trong Tệp kê khai V3 trở lên, nhưng lệnh gọi lại được cung cấp để đảm bảo 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ẽ 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ẻ đã chỉ định.
Tham số
-
tabId
số
-
lệnh gọi lại
hàm không bắt buộc
Tham số
callback
có dạng như sau:(tab: Tab) => void
-
phím tab
-
Giá trị trả về
-
Promise<Tab>
Chrome 88 trở lênLời hứa được hỗ trợ trong Tệp kê khai V3 trở lên, nhưng lệnh gọi lại được cung cấp để đảm bảo 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ẽ 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ổ đã chỉ định.
Tham số
-
windowId
số không bắt buộc
Mặc định là cửa sổ hiện tại.
-
lệnh gọi lại
hàm không bắt buộc
Tham số
callback
có dạng như sau:(tabs: Tab[]) => void
-
thẻ
Tab[]
-
Giá trị trả về
-
Promise<Tab[]>
Chrome 88 trở lênLời hứa được hỗ trợ trong Tệp kê khai V3 trở lên, nhưng lệnh gọi lại được cung cấp để đảm bảo 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ẽ 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à 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 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 Tệp kê khai V3 trở lên, nhưng lệnh gọi lại được cung cấp để đảm bảo 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ẽ 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ổ đã chỉ định.
Tham số
-
windowId
số không bắt buộc
Mặc định là cửa sổ hiện tại.
-
lệnh gọi lại
hàm không bắt buộc
Tham số
callback
có dạng như sau:(tab: Tab) => void
-
phím tab
-
Giá trị trả về
-
Promise<Tab>
Chrome 88 trở lênLời hứa được hỗ trợ trong Tệp kê khai V3 trở lên, nhưng lệnh gọi lại được cung cấp để đảm bảo 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ẽ 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ẻ đã 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; mặc định là thẻ đang hoạt động của cửa sổ hiện tại.
-
lệnh gọi lại
hàm không bắt buộc
Tham số
callback
có dạng như sau:(zoomFactor: number) => void
-
zoomFactor
số
Hệ số thu phóng hiện tại của thẻ.
-
Giá trị trả về
-
Promise<số>
Chrome 88 trở lênLời hứa được hỗ trợ trong Tệp kê khai V3 trở lên, nhưng lệnh gọi lại được cung cấp để đảm bảo 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ẽ 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 chế độ cài đặt thu phóng hiện tại của một thẻ đã chỉ định.
Tham số
-
tabId
số không bắt buộc
Mã nhận dạng của thẻ để 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.
-
lệnh gọi lại
hàm không bắt buộc
Tham số
callback
có dạng như sau:(zoomSettings: ZoomSettings) => void
-
zoomSettings
Chế độ 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 Tệp kê khai V3 trở lên, nhưng lệnh gọi lại được cung cấp để đảm bảo 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ẽ 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ẻ để quay lại; mặc định là thẻ đã chọn của cửa sổ hiện tại.
-
lệnh gọi lại
hàm không bắt buộc
Tham số
callback
có dạng như sau:() => void
Giá trị trả về
-
Promise<void>
Chrome 88 trở lênLời hứa được hỗ trợ trong Tệp kê khai V3 trở lên, nhưng lệnh gọi lại được cung cấp để đảm bảo 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ẽ 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 đến trang tiếp theo (nếu có).
Tham số
-
tabId
số không bắt buộc
Mã nhận dạng của thẻ để di chuyển về phía trước; mặc định là thẻ đã chọn của cửa sổ hiện tại.
-
lệnh gọi lại
hàm không bắt buộc
Tham số
callback
có dạng như sau:() => void
Giá trị trả về
-
Promise<void>
Chrome 88 trở lênLời hứa được hỗ trợ trong Tệp kê khai V3 trở lên, nhưng lệnh gọi lại được cung cấp để đảm bảo 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ẽ 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 đã chỉ định hoặc nếu không chỉ định nhóm nào, hãy thêm các thẻ đã cho 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ấ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. Giá trị mặc định là cửa sổ hiện tại.
-
-
groupId
số không bắt buộc
Mã của nhóm mà bạn muốn thêm thẻ vào. Nếu bạn không chỉ định, hệ thống sẽ tạo một nhóm mới.
-
tabIds
số | [số, ...số[]]
Mã thẻ hoặc danh sách mã thẻ cần thêm vào nhóm đã chỉ định.
-
-
lệnh gọi lại
hàm không bắt buộc
Tham số
callback
có dạng như sau:(groupId: number) => void
-
groupId
số
Mã của nhóm mà các thẻ được thêm vào.
-
Giá trị trả về
-
Promise<số>
Lời hứa được hỗ trợ trong Tệp kê khai V3 trở lên, nhưng lệnh gọi lại được cung cấp để đảm bảo 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ẽ 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ẻ đã cho và tập trung vào thẻ đầu tiên của nhóm. Sẽ không làm 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ẻ để làm nổi bật.
-
windowId
số không bắt buộc
Cửa sổ chứa các thẻ.
-
-
lệnh gọi lại
hàm không bắt buộc
Tham số
callback
có dạng như sau:(window: Window) => void
-
cửa sổ
Chứa thông tin chi tiết về cửa sổ có thẻ được làm nổi bật.
-
Giá trị trả về
-
Promise<windows.Window>
Chrome 88 trở lênLời hứa được hỗ trợ trong Tệp kê khai V3 trở lên, nhưng lệnh gọi lại được cung cấp để đảm bảo 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ẽ 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,
)
Được 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 theo phương thức lập trình trong tài liệu về tập lệnh nội dung.
Tham số
-
tabId
số không bắt buộc
Mã nhận dạng 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
Thông tin 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 được đặt cả hai cùng lúc.
-
lệnh gọi lại
hàm không bắt buộc
Tham số
callback
có dạng như sau:() => void
Giá trị trả về
-
Promise<void>
Chrome 88 trở lênLời hứa được hỗ trợ trong Tệp kê khai V3 trở lên, nhưng lệnh gọi lại được cung cấp để đảm bảo 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ẽ 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ẻ sang một vị trí mới trong cửa sổ hoặc sang một cửa sổ mới. Xin lưu ý rằng bạn chỉ có thể di chuyển các thẻ đến và đi từ các 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
số
Vị trí để di chuyển cửa sổ đến. Sử dụng
-1
để đặt thẻ ở cuối cửa sổ. -
windowId
số không bắt buộc
Mặc định là cửa sổ mà thẻ hiện đang ở.
-
-
lệnh gọi lại
hàm không bắt buộc
Tham số
callback
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 Tệp kê khai V3 trở lên, nhưng lệnh gọi lại được cung cấp để đảm bảo 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ẽ 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 được 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ó phát ra âm thanh 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 loại bỏ các 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ị loại bỏ hay không. Thẻ bị loại bỏ là thẻ có nội dung đã được tải xuống bộ nhớ nhưng vẫn hiển thị trong dải thẻ. Nội dung của thẻ sẽ được tải lại vào lần tiếp theo thẻ được kích hoạt.
-
bị đóng băng
boolean không bắt buộc
Đang chờ xử lýLiệu các thẻ có bị đóng băng hay không. Thẻ bị khoá không thể thực thi các tác vụ, bao gồm cả trình xử lý sự kiện hoặc bộ hẹn giờ. Thẻ này xuất hiện trong dải thẻ và nội dung của thẻ được tải trong bộ nhớ. Tài khoản sẽ được huỷ trạng thái đóng băng khi kích hoạt.
-
groupId
số không bắt buộc
Chrome 88 trở lênMã nhận dạng của nhóm chứa các thẻ hoặc
tabGroups.TAB_GROUP_ID_NONE
đối với các thẻ không được nhóm. -
được làm nổi bật
boolean không bắt buộc
Liệu các thẻ có được làm nổi bật hay không.
-
index
số không bắt buộc
Vị trí của các thẻ 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.
-
được ghim
boolean không bắt buộc
Liệu các thẻ có được ghim hay không.
-
trạng thái
TabStatus không bắt buộc
Trạng thái tải thẻ.
-
tiêu đề
chuỗi không bắt buộc
So khớp tiêu đề trang với một mẫu. Thuộc tính này sẽ bị bỏ qua nếu tiện ích không có quyền
"tabs"
. -
url
string | string[] không bắt buộc
So khớp 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ã nhận dạng của cửa sổ mẹ hoặc
windows.WINDOW_ID_CURRENT
cho 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ẻ.
-
-
lệnh gọi lại
hàm không bắt buộc
Tham số
callback
có dạng như sau:(result: Tab[]) => void
-
kết quả
Tab[]
-
Giá trị trả về
-
Promise<Tab[]>
Chrome 88 trở lênLời hứa được hỗ trợ trong Tệp kê khai V3 trở lên, nhưng lệnh gọi lại được cung cấp để đảm bảo 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ẽ 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 thẻ.
Tham số
-
tabId
số không bắt buộc
Mã nhận dạng 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 tính năng lưu vào bộ nhớ đệm cục bộ hay không. Giá trị mặc định là
false
.
-
-
lệnh gọi lại
hàm không bắt buộc
Tham số
callback
có dạng như sau:() => void
Giá trị trả về
-
Promise<void>
Chrome 88 trở lênLời hứa được hỗ trợ trong Tệp kê khai V3 trở lên, nhưng lệnh gọi lại được cung cấp để đảm bảo 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ẽ 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.
-
lệnh gọi lại
hàm không bắt buộc
Tham số
callback
có dạng như sau:() => void
Giá trị trả về
-
Promise<void>
Chrome 88 trở lênLời hứa được hỗ trợ trong Tệp kê khai V3 trở lên, nhưng lệnh gọi lại được cung cấp để đảm bảo 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ẽ 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,
)
Được thay thế bằng scripting.removeCSS
trong Manifest V3.
Xoá CSS của trang đã được chèn trước đó bằng lệnh gọi đến scripting.insertCSS
.
Tham số
-
tabId
số không bắt buộc
Mã nhận dạng 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 được đặt cả hai cùng lúc.
-
lệnh gọi lại
hàm không bắt buộc
Tham số
callback
có dạng như sau:() => void
Giá trị trả về
-
Promise<void>
Chrome 88 trở lênLời hứa được hỗ trợ trong Tệp kê khai V3 trở lên, nhưng lệnh gọi lại được cung cấp để đảm bảo 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ẽ 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 thông báo đến(các) tập lệnh nội dung trong thẻ được chỉ định, với lệnh gọi lại không bắt buộc để chạy khi hệ thống gửi lại phản hồ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ẻ đã chỉ định cho tiện ích hiện tại.
Tham số
-
tabId
số
-
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ể chuyển đổi sang JSON.
-
tùy chọn
đối tượng không bắt buộc
-
lệnh gọi lại
hàm không bắt buộc
Chrome 99 trở lênTham số
callback
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ý của thông báo gửi. Nếu xảy ra lỗi trong khi kết nối với thẻ đã chỉ định, 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ề
-
Promise<any>
Chrome 99 trở lênLời hứa được hỗ trợ trong Tệp kê khai V3 trở lên, nhưng lệnh gọi lại được cung cấp để đảm bảo 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ẽ 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ẻ đã chỉ định, với lệnh gọi lại không bắt buộc để chạy khi hệ thống gửi lại phản hồ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ẻ đã chỉ định cho tiện ích hiện tại.
Tham số
-
tabId
số
-
request
bất kỳ
-
lệnh gọi lại
hàm không bắt buộc
Chrome 99 trở lênTham số
callback
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 với thẻ đã chỉ định, 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ề
-
Promise<any>
Chrome 99 trở lênLời hứa được hỗ trợ trong Tệp kê khai V3 trở lên, nhưng lệnh gọi lại được cung cấp để đảm bảo 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ẽ 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,
)
Phóng to một thẻ đã chỉ định.
Tham số
-
tabId
số không bắt buộc
Mã của 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
số
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 phải là mặc định) cho thẻ. -
lệnh gọi lại
hàm không bắt buộc
Tham số
callback
có dạng như sau:() => void
Giá trị trả về
-
Promise<void>
Chrome 88 trở lênLời hứa được hỗ trợ trong Tệp kê khai V3 trở lên, nhưng lệnh gọi lại được cung cấp để đảm bảo 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ẽ 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ụ thể, xác định cách xử lý các thay đổi về thu phóng. Các chế độ cài đặt này sẽ được đặt lại về mặc định khi bạn di chuyển trong thẻ.
Tham số
-
tabId
số không bắt buộc
Mã nhận dạng 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ý.
-
lệnh gọi lại
hàm không bắt buộc
Tham số
callback
có dạng như sau:() => void
Giá trị trả về
-
Promise<void>
Chrome 88 trở lênLời hứa được hỗ trợ trong Tệp kê khai V3 trở lên, nhưng lệnh gọi lại được cung cấp để đảm bảo 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ẽ 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 nhóm tương ứng. Nếu có nhóm nào trống, 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.
-
lệnh gọi lại
hàm không bắt buộc
Tham số
callback
có dạng như sau:() => void
Giá trị trả về
-
Promise<void>
Lời hứa được hỗ trợ trong Tệp kê khai V3 trở lên, nhưng lệnh gọi lại được cung cấp để đảm bảo 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ẽ 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 thẻ. Các 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 loại bỏ 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 thẻ có bị tắt tiếng 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.
-
được ghim
boolean không bắt buộc
Liệu thẻ có đượ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 làm nổi bật.
Liệu thẻ có được chọn 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 sử dụng
scripting.executeScript
.
-
-
lệnh gọi lại
hàm không bắt buộc
Tham số
callback
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 Tệp kê khai V3 trở lên, nhưng lệnh gọi lại được cung cấp để đảm bảo 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ẽ 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 cửa sổ thay đổi. Xin lưu ý rằng URL của thẻ có thể chưa được đặt 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ố
-
lệnh gọi lại
hàm
Tham số
callback
có dạng như sau:(activeInfo: object) => void
-
activeInfo
đối tượng
-
tabId
số
Mã của thẻ đã hoạt động.
-
windowId
số
Mã nhận dạng của 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 cửa sổ thay đổi. Xin lưu ý rằng URL của thẻ có thể chưa được đặt 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
để được thông báo khi URL được đặt.
Tham số
-
lệnh gọi lại
hàm
Tham số
callback
có dạng như sau:(tabId: number, selectInfo: object) => void
-
tabId
số
-
selectInfo
đối tượng
-
windowId
số
Mã của cửa sổ mà thẻ đã 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ụ: vì thẻ đó đã được di chuyển giữa các cửa sổ.
Tham số
-
lệnh gọi lại
hàm
Tham số
callback
có dạng như sau:(tabId: number, attachInfo: object) => void
-
tabId
số
-
attachInfo
đối tượng
-
newPosition
số
-
newWindowId
số
-
-
onCreated
chrome.tabs.onCreated.addListener(
callback: function,
)
Được kích hoạt khi tạo một thẻ. Xin lưu ý rằng URL của thẻ và tư cách thành viên nhóm thẻ có thể chưa được đặt tại thời điểm sự kiện này được kích hoạt, nhưng bạn có thể nghe sự kiện onUpdated để được thông báo khi URL được đặt hoặc thẻ được thêm vào nhóm thẻ.
onDetached
chrome.tabs.onDetached.addListener(
callback: function,
)
Được kích hoạt khi một thẻ được tách khỏi cửa sổ; ví dụ: vì thẻ đó đã được di chuyển giữa các cửa sổ.
Tham số
-
lệnh gọi lại
hàm
Tham số
callback
có dạng như sau:(tabId: number, detachInfo: object) => void
-
tabId
số
-
detachInfo
đối tượng
-
oldPosition
số
-
oldWindowId
số
-
-
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 làm nổi bật hoặc được chọn trong một cửa sổ thay đổi.
Tham số
-
lệnh gọi lại
hàm
Tham số
callback
có dạng như sau:(selectInfo: object) => void
-
selectInfo
đối tượng
-
tabIds
number[]
Tất cả các thẻ được làm nổi bật trong cửa sổ.
-
windowId
số
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 làm nổi bật hoặc được chọn trong một cửa sổ thay đổi.
Tham số
-
lệnh gọi lại
hàm
Tham số
callback
có dạng như sau:(highlightInfo: object) => void
-
highlightInfo
đối tượng
-
tabIds
number[]
Tất cả các thẻ được làm nổi bật trong cửa sổ.
-
windowId
số
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 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. Các sự kiện di chuyển không được kích hoạt cho các thẻ khác phải di chuyển để phản hồi 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ố
-
lệnh gọi lại
hàm
Tham số
callback
có dạng như sau:(tabId: number, moveInfo: object) => void
-
tabId
số
-
moveInfo
đối tượng
-
fromIndex
số
-
toIndex
số
-
windowId
số
-
-
onRemoved
chrome.tabs.onRemoved.addListener(
callback: function,
)
Được kích hoạt khi một thẻ bị đóng.
Tham số
-
lệnh gọi lại
hàm
Tham số
callback
có dạng như sau:(tabId: number, removeInfo: object) => void
-
tabId
số
-
removeInfo
đối tượng
-
isWindowClosing
boolean
Đúng khi thẻ bị đóng do cửa sổ mẹ bị đóng.
-
windowId
số
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ố
-
lệnh gọi lại
hàm
Tham số
callback
có dạng như sau:(addedTabId: number, removedTabId: number) => void
-
addedTabId
số
-
removedTabId
số
-
onSelectionChanged
chrome.tabs.onSelectionChanged.addListener(
callback: function,
)
Vui lòng sử dụng tabs.onActivated
.
Kích hoạt khi thẻ đã chọn trong cửa sổ thay đổi.
Tham số
-
lệnh gọi lại
hàm
Tham số
callback
có dạng như sau:(tabId: number, selectInfo: object) => void
-
tabId
số
-
selectInfo
đối tượng
-
windowId
số
Mã của cửa sổ mà thẻ đã 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ố
-
lệnh gọi lại
hàm
Tham số
callback
có dạng như sau:(tabId: number, changeInfo: object, tab: Tab) => void
-
tabId
số
-
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 mới của thẻ có thể tự động loại bỏ.
-
đã hủy
boolean không bắt buộc
Chrome 54 trở lênTrạng thái mới của thẻ bị loại bỏ.
-
favIconUrl
chuỗi không bắt buộc
URL của biểu tượng trang web mới của thẻ.
-
bị đóng băng
boolean không bắt buộc
Đang chờ xử lýTrạng thái mới của thẻ bị khoá.
-
groupId
số không bắt buộc
Chrome 88 trở lênNhóm mới của thẻ.
-
mutedInfo
MutedInfo 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.
-
được ghim
boolean không bắt buộc
Trạng thái mới của thẻ được ghim.
-
trạng thái
TabStatus không bắt buộc
Trạng thái tải của thẻ.
-
tiêu đề
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 URL đó đã thay đổi.
-
-
phím tab
-
onZoomChange
chrome.tabs.onZoomChange.addListener(
callback: function,
)
Được kích hoạt khi phóng to một thẻ.
Tham số
-
lệnh gọi lại
hàm
Tham số
callback
có dạng như sau:(ZoomChangeInfo: object) => void
-
ZoomChangeInfo
đối tượng
-
newZoomFactor
số
-
oldZoomFactor
số
-
tabId
số
-
zoomSettings
-
-