Nội dung mô tả
Sử dụng thẻ webview
để chủ động tải nội dung trực tiếp từ web qua mạng và nhúng nội dung đó vào Ứng dụng Chrome. Ứng dụng của bạn có thể kiểm soát giao diện của webview
và tương tác với nội dung web, bắt đầu các thao tác di chuyển trong trang web được nhúng, phản ứng với các sự kiện lỗi xảy ra trong trang web đó và làm nhiều việc khác (xem phần Cách sử dụng).
Quyền
webview
Loại
ClearDataOptions
Các tuỳ chọn xác định dữ liệu nào cần được clearData
xoá.
Thuộc tính
-
từ
số không bắt buộc
Xoá dữ liệu được tích luỹ vào hoặc sau ngày này, được biểu thị bằng mili giây kể từ thời gian bắt đầu của hệ thống (có thể truy cập qua phương thức getTime của đối tượng JavaScript
Date
). Nếu không có, giá trị mặc định sẽ là0
(sẽ xoá tất cả dữ liệu duyệt web).
ClearDataTypeSet
Một tập hợp các kiểu dữ liệu. Việc thiếu thuộc tính sẽ được hiểu là false
.
Thuộc tính
-
bộ nhớ đệm ứng dụng
boolean không bắt buộc
Bộ nhớ đệm appcache của trang web.
-
Bộ nhớ đệm
boolean không bắt buộc
Chrome 44 trở lênKể từ Chrome 43. Bộ nhớ đệm của trình duyệt. Lưu ý: khi xoá dữ liệu, toàn bộ bộ nhớ đệm sẽ bị xoá; không giới hạn ở phạm vi bạn chỉ định.
-
cookie
boolean không bắt buộc
Cookie của phân vùng.
-
fileSystems
boolean không bắt buộc
Hệ thống tệp của trang web.
-
indexedDB
boolean không bắt buộc
Dữ liệu IndexedDB của trang web.
-
localStorage
boolean không bắt buộc
Dữ liệu bộ nhớ cục bộ của trang web.
-
persistentCookies
boolean không bắt buộc
Chrome 58 trở lênCookie cố định của phân vùng.
-
sessionCookies
boolean không bắt buộc
Chrome 58 trở lênCookie phiên của phân vùng.
-
webSQL
boolean không bắt buộc
Dữ liệu WebSQL của trang web.
ContentScriptDetails
Thông tin chi tiết về tập lệnh nội dung cần chèn. Tham khảo tài liệu về tập lệnh nội dung để biết thêm chi tiết.
Thuộc tính
-
all_frames
boolean không bắt buộc
Nếu
all_frames
làtrue
, thì điều này có nghĩa là JavaScript hoặc CSS phải được chèn vào tất cả các khung của trang hiện tại. Theo mặc định,all_frames
làfalse
và JavaScript hoặc CSS chỉ được chèn vào khung trên cùng. -
css
InjectionItems không bắt buộc
Mã CSS hoặc danh sách các tệp CSS được đưa vào các trang phù hợp. Các mã này được chèn theo thứ tự xuất hiện trước khi tạo hoặc hiển thị một DOM bất kỳ cho trang.
-
exclude_globs
string[] không bắt buộc
Được áp dụng sau các kết quả khớp để loại trừ các URL khớp với toàn bộ cụm này. Đối với mục đích mô phỏng từ khoá @loại trừ Gr bịPercent.
-
exclude_matches
string[] không bắt buộc
Không bao gồm các trang mà tập lệnh nội dung này sẽ được chèn vào.
-
include_globs
string[] không bắt buộc
Áp dụng sau các kết quả khớp để chỉ bao gồm những URL cũng khớp với toàn bộ cụm này. Nhằm mục đích mô phỏng từ khoá @include Gr nhắcPercent.
-
js
InjectionItems không bắt buộc
Mã JavaScript hoặc danh sách tệp JavaScript được đưa vào các trang phù hợp. Các đoạn mã này được chèn theo thứ tự xuất hiện.
-
match_about_blank
boolean không bắt buộc
Liệu có nên chèn tập lệnh nội dung trên about:blank và about:srcdoc hay không. Tập lệnh nội dung sẽ chỉ được đưa vào các trang khi URL kế thừa của chúng khớp với một trong các mẫu đã khai báo trong trường trùng khớp. URL kế thừa là URL của tài liệu đã tạo khung hoặc cửa sổ. Không thể chèn tập lệnh nội dung vào khung hộp cát.
-
khớp với
chuỗi[]
Chỉ định những trang mà tập lệnh nội dung này sẽ được chèn vào.
-
tên
string
Tên của tập lệnh nội dung cần chèn.
-
run_at
RunAt không bắt buộc
Thời gian sớm nhất để JavaScript hoặc CSS được đưa vào thẻ. Giá trị mặc định là "document_idle".
ContentWindow
Ô điều khiển tin nhắn cho một cửa sổ khách.
Thuộc tính
-
postMessage
void
Đăng thông báo lên nội dung web đã nhúng, miễn là nội dung được nhúng đang hiển thị một trang từ nguồn gốc đích. Bạn có thể sử dụng phương thức này sau khi trang tải xong. Theo dõi sự kiện
contentload
rồi gọi phương thức.Khách sẽ có thể gửi câu trả lời cho trình nhúng bằng cách đăng tin nhắn tới
event.source
trong sự kiện tin nhắn mà họ nhận được.API này giống với API HTML5 PostMessage để giao tiếp giữa các trang web. Trình nhúng có thể theo dõi câu trả lời bằng cách thêm trình nghe sự kiện
message
vào khung riêng.Hàm
postMessage
sẽ có dạng như sau:(message: any, targetOrigin: string) => {...}
-
tin nhắn
Bất kỳ
Đối tượng tin nhắn để gửi cho khách.
-
targetOrigin
string
Chỉ định nguồn gốc của cửa sổ khách để gửi sự kiện.
-
ContextMenuCreateProperties
Thuộc tính
-
đã chọn
boolean không bắt buộc
Trạng thái ban đầu của hộp đánh dấu hoặc mục chọn: true cho mục đã chọn và false nếu đã bỏ chọn. Mỗi lần, bạn chỉ có thể chọn một mục trong một nhóm các mục radio nhất định.
-
bối cảnh
[ContextType, ...ContextType[]] không bắt buộc
Danh sách ngữ cảnh sẽ xuất hiện cho mục này trong trình đơn. Giá trị mặc định là ['page'] nếu không được chỉ định.
-
documentUrlPatterns
string[] không bắt buộc
Cho phép bạn giới hạn mục này chỉ áp dụng cho các tài liệu có URL khớp với một trong các mẫu nhất định. (Điều này cũng áp dụng cho khung.) Để biết chi tiết về định dạng của mẫu, hãy xem Mẫu so khớp.
-
đang bật
boolean không bắt buộc
Liệu mục trình đơn theo bối cảnh này đang bật hay tắt. Giá trị mặc định là
true
. -
id
chuỗi không bắt buộc
Mã nhận dạng duy nhất để gán cho mục này. Bắt buộc đối với các trang sự kiện. Không được giống với một mã nhận dạng khác cho phần mở rộng này.
-
parentId
chuỗi | số không bắt buộc
Mã nhận dạng của mục trong trình đơn gốc; mục này làm cho mục này là con của mục đã thêm trước đó.
-
targetUrlPatterns
string[] không bắt buộc
Tương tự như documentUrlPatterns nhưng cho phép bạn lọc dựa trên thuộc tính
src
của thẻ img/audio/video vàhref
của thẻ ký tự liên kết. -
title
chuỗi không bắt buộc
Văn bản cần hiển thị trong mục; đây là văn bản bắt buộc trừ phi
type
là "dấu phân tách". Khi ngữ cảnh là "lựa chọn", bạn có thể dùng%s
trong chuỗi để hiện văn bản đã chọn. Ví dụ: nếu giá trị của tham số này là "Translate '%s' to Pig Latin" và người dùng chọn từ "cool", mục trình đơn theo bối cảnh cho lựa chọn sẽ là "Dịch "ngon" sang Tiếng Pig Latin". -
loại
ItemType không bắt buộc
Loại mục trong trình đơn. Giá trị mặc định là "normal" (bình thường) nếu không được chỉ định.
-
onclick
khoảng trống không bắt buộc
Hàm sẽ được gọi lại khi người dùng nhấp vào mục trong trình đơn.
Hàm
onclick
sẽ có dạng như sau:(info: OnClickData) => {...}
-
info
Thông tin về mục được nhấp vào và bối cảnh nơi lượt nhấp xảy ra.
-
ContextMenus
Thuộc tính
-
onShow
Sự kiện<functionvoid>
Kích hoạt trước khi hiển thị trình đơn theo bối cảnh trên
webview
này. Bạn có thể dùng trình đơn theo bối cảnh này để tắt trình đơn theo bối cảnh bằng cách gọievent.preventDefault()
.Hàm
onShow.addListener
sẽ có dạng như sau:(callback: function) => {...}
-
số gọi lại
hàm
Tham số
callback
sẽ có dạng như sau:(event: object) => void
-
event
đối tượng
-
preventDefault
void
Gọi lệnh này để ngăn trình đơn theo bối cảnh hiển thị.
Hàm
preventDefault
sẽ có dạng như sau:() => {...}
-
-
-
-
create
void
Tạo một mục mới trên trình đơn theo bối cảnh. Xin lưu ý rằng nếu xảy ra lỗi trong quá trình tạo, thì bạn có thể sẽ không biết cho đến khi lệnh gọi lại của quá trình tạo được kích hoạt (thông tin chi tiết sẽ có trong
runtime.lastError
).Hàm
create
sẽ có dạng như sau:(createProperties: object, callback?: function) => {...}
-
createProperties
đối tượng
Các thuộc tính dùng để tạo mụ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ề
chuỗi | số
Mã của mặt hàng mới tạo.
-
-
xoá
void
Xoá một mục trong trình đơn theo bối cảnh.
Hàm
remove
sẽ có dạng như sau:(menuItemId: string | number, callback?: function) => {...}
-
chuỗi | số
Mã của mục trong trình đơn theo bối cảnh cần xoá.
-
số gọi lại
hàm không bắt buộc
Tham số
callback
sẽ có dạng như sau:() => void
-
-
removeAll
void
Xoá tất cả mục trong trình đơn theo bối cảnh đã thêm vào
webview
này.Hàm
removeAll
sẽ có dạng như sau:(callback?: function) => {...}
-
số gọi lại
hàm không bắt buộc
Tham số
callback
sẽ có dạng như sau:() => void
-
-
cập nhật
void
Cập nhật một mục trong trình đơn theo bối cảnh đã tạo trước đó.
Hàm
update
sẽ có dạng như sau:(id: string | number, updateProperties: object, callback?: function) => {...}
-
id
chuỗi | số
Mã của mục cần cập nhật.
-
updateProperties
đối tượng
Các thuộc tính cần cập nhật. Chấp nhận các giá trị giống như hàm create.
-
số gọi lại
hàm không bắt buộc
Tham số
callback
sẽ có dạng như sau:() => void
-
ContextMenuUpdateProperties
Thuộc tính
-
đã chọn
boolean không bắt buộc
Trạng thái của hộp đánh dấu hoặc mục chọn: true nếu đã chọn và false nếu đã bỏ chọn. Mỗi lần, bạn chỉ có thể chọn một mục trong một nhóm các mục radio nhất định.
-
bối cảnh
[ContextType, ...ContextType[]] không bắt buộc
Danh sách ngữ cảnh sẽ xuất hiện cho mục này trong trình đơn.
-
documentUrlPatterns
string[] không bắt buộc
Cho phép bạn giới hạn mục này chỉ áp dụng cho các tài liệu có URL khớp với một trong các mẫu nhất định. (Điều này cũng áp dụng cho khung.) Để biết chi tiết về định dạng của mẫu, hãy xem Mẫu so khớp.
-
đang bật
boolean không bắt buộc
Liệu mục trình đơn theo bối cảnh này đang bật hay tắt.
-
parentId
chuỗi | số không bắt buộc
Mã nhận dạng của mục trong trình đơn gốc; mục này làm cho mục này là con của mục đã thêm trước đó. Lưu ý: Bạn không thể thay đổi một mục thành phần tử con của một trong các thành phần con cháu của mục đó.
-
targetUrlPatterns
string[] không bắt buộc
Tương tự như documentUrlPatterns nhưng cho phép bạn lọc dựa trên thuộc tính
src
của thẻ img/audio/video vàhref
của thẻ ký tự liên kết. -
title
chuỗi không bắt buộc
Văn bản sẽ xuất hiện trong mục
-
loại
ItemType không bắt buộc
Loại mục trong trình đơn.
-
onclick
khoảng trống không bắt buộc
Hàm sẽ được gọi lại khi người dùng nhấp vào mục trong trình đơn.
Hàm
onclick
sẽ có dạng như sau:(info: OnClickData) => {...}
-
info
Thông tin về mục được nhấp vào và bối cảnh nơi lượt nhấp xảy ra.
-
ContextType
Các ngữ cảnh khác nhau mà trình đơn có thể xuất hiện. Việc chỉ định "all" tương đương với sự kết hợp của tất cả các ngữ cảnh khác.
Liệt kê
"selection"
"video"
DialogController
Giao diện được đính kèm với sự kiện DOM dialog
.
Thuộc tính
-
huỷ
void
Từ chối hộp thoại. Tương đương với việc nhấp vào Huỷ trong hộp thoại
confirm
hoặcprompt
.Hàm
cancel
sẽ có dạng như sau:() => {...}
-
ok
void
Chấp nhận hộp thoại. Tương đương với việc nhấp vào OK trong hộp thoại
alert
,confirm
hoặcprompt
.Hàm
ok
sẽ có dạng như sau:(response?: string) => {...}
-
phản hồi
chuỗi không bắt buộc
Chuỗi phản hồi cần cung cấp cho khách khi chấp nhận hộp thoại
prompt
.
-
DownloadPermissionRequest
Loại đối tượng request
đi kèm với sự kiện DOM download
permissionrequest
.
Thuộc tính
-
requestMethod
string
Loại yêu cầu HTTP (ví dụ:
GET
) được liên kết với yêu cầu tải xuống. -
url
string
URL tải xuống được yêu cầu.
-
allow
void
Cho phép yêu cầu cấp quyền.
Hàm
allow
sẽ có dạng như sau:() => {...}
-
từ chối
void
Từ chối yêu cầu cấp quyền. Đây là hành vi mặc định nếu
allow
không được gọi.Hàm
deny
sẽ có dạng như sau:() => {...}
FileSystemPermissionRequest
Loại đối tượng request
đi kèm với sự kiện DOM filesystem
permissionrequest
.
Thuộc tính
-
url
string
URL của khung yêu cầu quyền truy cập vào hệ thống tệp cục bộ.
-
allow
void
Cho phép yêu cầu cấp quyền.
Hàm
allow
sẽ có dạng như sau:() => {...}
-
từ chối
void
Từ chối yêu cầu cấp quyền.
Hàm
deny
sẽ có dạng như sau:() => {...}
FindCallbackResults
Chứa tất cả kết quả của yêu cầu tìm.
Thuộc tính
-
activeMatchOrdinal
number
Số thứ tự của kết quả trùng khớp hiện tại.
-
đã huỷ
boolean
Cho biết liệu yêu cầu tìm này có bị huỷ hay không.
-
numberOfMatches
number
Số lần
searchText
được đối sánh trên trang. -
selectionRect
Mô tả một hình chữ nhật xung quanh kết quả khớp đang hoạt động trong toạ độ trên màn hình.
FindOptions
Các tuỳ chọn dành cho yêu cầu tìm.
Thuộc tính
-
lùi
boolean không bắt buộc
Gắn cờ để tìm các kết quả phù hợp theo thứ tự đảo ngược. Giá trị mặc định là
false
. -
matchCase
boolean không bắt buộc
Gắn cờ để khớp với phân biệt chữ hoa chữ thường. Giá trị mặc định là
false
.
FullscreenPermissionRequest
Loại đối tượng request
đi kèm với sự kiện DOM fullscreen
permissionrequest
.
Thuộc tính
-
nguồn gốc
string
Nguồn gốc của khung bên trong
webview
đã khởi tạo yêu cầu toàn màn hình. -
allow
void
Cho phép yêu cầu cấp quyền.
Hàm
allow
sẽ có dạng như sau:() => {...}
-
từ chối
void
Từ chối yêu cầu cấp quyền.
Hàm
deny
sẽ có dạng như sau:() => {...}
GeolocationPermissionRequest
Loại đối tượng request
đi kèm với sự kiện DOM geolocation
permissionrequest
.
Thuộc tính
-
url
string
URL của khung yêu cầu quyền truy cập vào dữ liệu vị trí địa lý.
-
allow
void
Cho phép yêu cầu cấp quyền.
Hàm
allow
sẽ có dạng như sau:() => {...}
-
từ chối
void
Từ chối yêu cầu cấp quyền. Đây là hành vi mặc định nếu
allow
không được gọi.Hàm
deny
sẽ có dạng như sau:() => {...}
HidPermissionRequest
Loại đối tượng request
đi kèm với sự kiện DOM hid
permissionrequest
.
Thuộc tính
-
url
string
URL của khung yêu cầu quyền truy cập vào HID API.
-
allow
void
Cho phép yêu cầu cấp quyền.
Hàm
allow
sẽ có dạng như sau:() => {...}
-
từ chối
void
Từ chối yêu cầu cấp quyền. Đây là hành vi mặc định nếu
allow
không được gọi.Hàm
deny
sẽ có dạng như sau:() => {...}
InjectDetails
Thông tin chi tiết về tập lệnh hoặc 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.
Thuộc tính
-
mã
chuỗi không bắt buộc
Mã JavaScript hoặc CSS cần chèn.
Cảnh báo: Hãy cẩn thận khi sử dụng tham số
code
. Việc sử dụng sai cách có thể khiến ứng dụng của bạn gặp phải các cuộc tấn công viết tập lệnh trên nhiều trang web. -
tệp
chuỗi không bắt buộc
Tệp JavaScript hoặc CSS cần chèn.
InjectionItems
Loại mục chèn: mã hoặc một nhóm tệp.
Thuộc tính
-
mã
chuỗi không bắt buộc
Mã JavaScript hoặc CSS sẽ được đưa vào các trang phù hợp.
-
tệp
string[] không bắt buộc
Danh sách các tệp JavaScript hoặc CSS sẽ được đưa vào các trang phù hợp. Các mã này được chèn theo thứ tự xuất hiện trong mảng này.
LoadPluginPermissionRequest
Loại đối tượng request
đi kèm với sự kiện DOM loadplugin
permissionrequest
.
Thuộc tính
-
giá trị nhận dạng
string
Chuỗi giá trị nhận dạng của trình bổ trợ.
-
tên
string
Tên hiển thị của trình bổ trợ.
-
allow
void
Cho phép yêu cầu cấp quyền. Đây là hành vi mặc định nếu
deny
không được gọi.Hàm
allow
sẽ có dạng như sau:() => {...}
-
từ chối
void
Từ chối yêu cầu cấp quyền.
Hàm
deny
sẽ có dạng như sau:() => {...}
MediaPermissionRequest
Loại đối tượng request
đi kèm với sự kiện DOM media
permissionrequest
.
Thuộc tính
-
url
string
URL của khung yêu cầu quyền truy cập vào nội dung nghe nhìn của người dùng.
-
allow
void
Cho phép yêu cầu cấp quyền.
Hàm
allow
sẽ có dạng như sau:() => {...}
-
từ chối
void
Từ chối yêu cầu cấp quyền. Đây là hành vi mặc định nếu
allow
không được gọi.Hàm
deny
sẽ có dạng như sau:() => {...}
NewWindow
Giao diện được đính kèm với sự kiện DOM newwindow
.
Thuộc tính
-
đính kèm
void
Đính kèm trang đích được yêu cầu vào phần tử
webview
hiện có.Hàm
attach
sẽ có dạng như sau:(webview: object) => {...}
-
webview
đối tượng
Phần tử
webview
mà bạn phải đính kèm trang đích.
-
-
hủy
void
Huỷ yêu cầu về thời lượng mới.
Hàm
discard
sẽ có dạng như sau:() => {...}
PointerLockPermissionRequest
Loại đối tượng request
đi kèm với sự kiện DOM pointerLock
permissionrequest
.
Thuộc tính
-
lastUnlockedBySelf
boolean
Liệu khung yêu cầu có phải là ứng dụng gần đây nhất để giữ khoá con trỏ hay không.
-
url
string
URL của khung yêu cầu khoá con trỏ.
-
userGesture
boolean
Liệu có yêu cầu khóa con trỏ do thao tác nhập của người dùng hay không.
-
allow
void
Cho phép yêu cầu cấp quyền.
Hàm
allow
sẽ có dạng như sau:() => {...}
-
từ chối
void
Từ chối yêu cầu cấp quyền. Đây là hành vi mặc định nếu
allow
không được gọi.Hàm
deny
sẽ có dạng như sau:() => {...}
SelectionRect
Mô tả một hình chữ nhật trong các toạ độ trên màn hình.
Ngữ nghĩa vùng chứa giống như mảng; tức là toạ độ (left, top)
được xem là nằm trong hình chữ nhật, nhưng toạ độ (left + width, top)
thì không.
Thuộc tính
-
độ cao
number
Chiều cao của hình chữ nhật.
-
trái
number
Khoảng cách từ cạnh trái của màn hình đến cạnh trái của hình chữ nhật.
-
trên cùng
number
Khoảng cách từ cạnh trên của màn hình đến cạnh trên của hình chữ nhật.
-
chiều rộng
number
Chiều rộng của hình chữ nhật.
WebRequestEventInterface
Giao diện cung cấp quyền truy cập vào các sự kiện webRequest trên trang khách. Xem API tiện ích chrome.webRequest để biết thông tin chi tiết về vòng đời webRequest và các khái niệm có liên quan. Lưu ý: Sự kiện chrome.webRequest.onActionIgnored không được hỗ trợ cho webview.
Để minh hoạ sự khác biệt về mức sử dụng so với API webRequest của tiện ích, hãy xem xét mã ví dụ sau đây để chặn mọi yêu cầu của khách đối với URL khớp với *://www.evil.com/*
:
webview.request.onBeforeRequest.addListener(
function(details) { return {cancel: true}; },
{urls: ["*://www.evil.com/*"]},
["blocking"]);
Ngoài ra, giao diện này hỗ trợ các quy tắc webRequest khai báo thông qua các sự kiện onRequest
và onMessage
. Xem declarativeWebRequest
để biết thông tin chi tiết về API.
Xin lưu ý rằng các điều kiện và hành động cho webview webRequest khai báo phải được tạo thực thể từ các đối tác chrome.webViewRequest.*
. Mã ví dụ sau đây khai báo chặn tất cả các yêu cầu đến "example.com"
trên webview myWebview
:
var rule = {
conditions: [
new chrome.webViewRequest.RequestMatcher({ url: { hostSuffix: 'example.com' } })
],
actions: [ new chrome.webViewRequest.CancelRequest() ]
};
myWebview.request.onRequest.addRules([rule]);
ZoomMode
Xác định cách xử lý tính năng thu phóng trong webview
.
Liệt kê
"per-origin"
Các thay đổi về thao tác thu phóng sẽ vẫn được duy trì trong nguồn gốc của trang được thu phóng, tức là tất cả webview khác trong cùng một phân vùng được điều hướng đến cùng nguồn gốc đó cũng sẽ đượ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 đó sẽ được thu phóng theo cùng một hệ số thu phóng.
"mỗi lượt xem"
Thay đổi về mức thu phóng chỉ có hiệu lực trong chế độ xem web này. Những thay đổi về mức thu phóng trong các chế độ xem web khác sẽ không ảnh hưởng đến việc thu phóng của chế độ xem web này. Ngoài ra, các thay đổi thu phóng per-view
được đặt lại khi điều hướng; việc điều hướng một chế độ xem web sẽ luôn tải trang với các hệ số thu phóng theo nguồn gốc của chúng (trong phạm vi của phân vùng).
"disabled"
Tắt tất cả tính năng thu phóng trong webview. Nội dung sẽ trở về mức thu phóng mặc định và mọi thay đổi bạn đã thử thu phóng sẽ bị bỏ qua.
Thuộc tính
contentWindow
Tham chiếu đối tượng có thể được dùng để đăng thông báo lên trang khách.
Loại
contextMenus
Tương tự như API ContextMenus của Chrome, nhưng áp dụng cho webview
thay vì trình duyệt. Sử dụng API webview.contextMenus
để thêm các mục vào trình đơn theo bối cảnh của webview
. Bạn có thể chọn những loại đối tượng có thể áp dụng cho trình đơn theo bối cảnh, chẳng hạn như hình ảnh, siêu liên kết và trang.
Loại
request
Giao diện cung cấp quyền truy cập vào các sự kiện webRequest trên trang khách.
Phương thức
addContentScripts()
chrome.webviewTag.addContentScripts(
contentScriptList: [ContentScriptDetails, ...ContentScriptDetails[]],
)
Thêm các quy tắc chèn tập lệnh nội dung vào webview
. Khi webview
điều hướng đến một trang khớp với một hoặc nhiều quy tắc, các tập lệnh liên kết sẽ được chèn. Bạn có thể thêm quy tắc hoặc cập nhật các quy tắc hiện có theo phương thức lập trình.
Ví dụ sau đây thêm 2 quy tắc cho webview
: "myRule" và "anotherRule".
webview.addContentScripts([
{
name: 'myRule',
matches: ['http://www.foo.com/*'],
css: { files: ['mystyles.css'] },
js: { files: ['jquery.js', 'myscript.js'] },
run_at: 'document_start'
},
{
name: 'anotherRule',
matches: ['http://www.bar.com/*'],
js: { code: "document.body.style.backgroundColor = 'red';" },
run_at: 'document_end'
}]);
...
// Navigates webview.
webview.src = 'http://www.foo.com';
Bạn có thể trì hoãn lệnh gọi addContentScripts cho đến khi cần chèn tập lệnh.
Ví dụ sau cho biết cách ghi đè một quy tắc hiện có.
webview.addContentScripts([{
name: 'rule',
matches: ['http://www.foo.com/*'],
js: { files: ['scriptA.js'] },
run_at: 'document_start'}]);
// Do something.
webview.src = 'http://www.foo.com/*';
...
// Overwrite 'rule' defined before.
webview.addContentScripts([{
name: 'rule',
matches: ['http://www.bar.com/*'],
js: { files: ['scriptB.js'] },
run_at: 'document_end'}]);
Nếu webview
đã được điều hướng đến điểm gốc (ví dụ: foo.com) và gọi webview.addContentScripts
để thêm "myRule", thì bạn cần đợi lần điều hướng tiếp theo để chèn tập lệnh vào. Nếu bạn muốn chèn ngay lập tức, executeScript
sẽ là lựa chọn đúng đắn.
Các quy tắc được lưu giữ ngay cả khi quá trình khách gặp sự cố hoặc bị huỷ hay ngay cả khi webview
được gán lại cấp độ gốc.
Tham khảo tài liệu về tập lệnh nội dung để biết thêm chi tiết.
Tham số
-
contentScriptList
Thông tin chi tiết về tập lệnh nội dung cần thêm.
back()
chrome.webviewTag.back(
callback?: function,
)
Điều hướng lùi lại một mục lịch sử nếu có thể. Tương đương với go(-1)
.
Tham số
-
số gọi lại
hàm không bắt buộc
Chrome 44 trở lênTham số
callback
sẽ có dạng như sau:(success: boolean) => void
-
thành công
boolean
Cho biết quá trình điều hướng có thành công hay không.
-
canGoBack()
chrome.webviewTag.canGoBack()
Cho biết liệu có thể điều hướng ngược lại trong phần nhật ký hay không. Trạng thái của hàm này được lưu vào bộ nhớ đệm và được cập nhật trước mỗi loadcommit
, vì vậy, tốt nhất là bạn nên gọi hàm này trên loadcommit
.
Giá trị trả về
-
boolean
canGoForward()
chrome.webviewTag.canGoForward()
Cho biết liệu có thể điều hướng tiếp trong nhật ký hay không. Trạng thái của hàm này được lưu vào bộ nhớ đệm và được cập nhật trước mỗi loadcommit
, vì vậy, tốt nhất là bạn nên gọi hàm này trên loadcommit
.
Giá trị trả về
-
boolean
captureVisibleRegion()
chrome.webviewTag.captureVisibleRegion(
options?: ImageDetails,
callback: function,
)
Chụp khu vực hiển thị của chế độ xem web.
Tham số
-
tùy chọn
ImageDetails không bắt buộc
-
số gọi lại
hàm
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ử Hình ảnh HTML để hiển thị.
-
clearData()
chrome.webviewTag.clearData(
options: ClearDataOptions,
types: ClearDataTypeSet,
callback?: function,
)
Xoá dữ liệu duyệt web cho phân vùng webview
.
Tham số
-
tùy chọn
Các tuỳ chọn xác định dữ liệu cần xoá.
-
loại
Các loại dữ liệu cần xoá.
-
số gọi lại
hàm không bắt buộc
Tham số
callback
sẽ có dạng như sau:() => void
executeScript()
chrome.webviewTag.executeScript(
details: InjectDetails,
callback?: function,
)
Chèn mã JavaScript vào trang khách.
Mã mẫu sau đây sử dụng tính năng chèn tập lệnh để đặt màu nền của trang khách thành màu đỏ:
webview.executeScript({ code: "document.body.style.backgroundColor = 'red'" });
Tham số
-
chi tiết
Chi tiết về tập lệnh cần chạy.
-
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.
-
find()
chrome.webviewTag.find(
searchText: string,
options?: FindOptions,
callback?: function,
)
Bắt đầu một yêu cầu tìm trong trang.
Tham số
-
searchText
string
Chuỗi cần tìm trong trang.
-
tùy chọn
FindOptions không bắt buộc
Các tuỳ chọn dành cho yêu cầu tìm.
-
số gọi lại
hàm không bắt buộc
Tham số
callback
sẽ có dạng như sau:(results?: FindCallbackResults) => void
-
kết quả
FindCallbackResults không bắt buộc
Chứa tất cả kết quả của yêu cầu tìm. Bạn có thể bỏ qua
results
nếu hàm này không được sử dụng trong phần nội dung của hàm callback; ví dụ: nếu lệnh gọi lại chỉ được dùng để nhận biết khi nào yêu cầu tìm đã hoàn tất.
-
forward()
chrome.webviewTag.forward(
callback?: function,
)
Di chuyển tiến một mục nhật ký nếu có thể. Tương đương với go(1)
.
Tham số
-
số gọi lại
hàm không bắt buộc
Chrome 44 trở lênTham số
callback
sẽ có dạng như sau:(success: boolean) => void
-
thành công
boolean
Cho biết quá trình điều hướng có thành công hay không.
-
getAudioState()
chrome.webviewTag.getAudioState(
callback: function,
)
Truy vấn trạng thái âm thanh.
Tham số
-
số gọi lại
hàm
Tham số
callback
sẽ có dạng như sau:(audible: boolean) => void
-
audible
boolean
-
getProcessId()
chrome.webviewTag.getProcessId()
Trả về mã quy trình nội bộ của Chrome cho quy trình hiện tại của trang web khách, cho phép trình nhúng biết có bao nhiêu khách sẽ bị ảnh hưởng khi chấm dứt quá trình này. Hai khách sẽ chỉ chia sẻ một quy trình nếu họ thuộc cùng một ứng dụng và có cùng mã phân vùng bộ nhớ. Lệnh gọi có tính đồng bộ và trả về khái niệm đã lưu vào bộ nhớ đệm của trình nhúng về mã nhận dạng tiến trình hiện tại. Mã quy trình không giống với mã quy trình của hệ điều hành.
Giá trị trả về
-
number
getUserAgent()
chrome.webviewTag.getUserAgent()
Trả về chuỗi tác nhân người dùng mà webview
sử dụng cho các yêu cầu từ trang khách.
Giá trị trả về
-
string
getZoom()
chrome.webviewTag.getZoom(
callback: function,
)
Lấy hệ số thu phóng hiện tại.
Tham số
-
số gọi lại
hàm
Tham số
callback
sẽ có dạng như sau:(zoomFactor: number) => void
-
zoomFactor
number
Hệ số thu phóng hiện tại.
-
getZoomMode()
chrome.webviewTag.getZoomMode(
callback: function,
)
Lấy chế độ thu phóng hiện tại.
Tham số
-
số gọi lại
hàm
Tham số
callback
sẽ có dạng như sau:(ZoomMode: ZoomMode) => void
-
ZoomMode
Chế độ thu phóng hiện tại của
webview
.
-
go()
chrome.webviewTag.go(
relativeIndex: number,
callback?: function,
)
Điều hướng đến một mục lịch sử bằng cách sử dụng chỉ mục lịch sử có liên quan đến điều hướng hiện tại. Nếu không thể điều hướng được yêu cầu, thì phương thức này sẽ không có hiệu lực.
Tham số
-
relativeIndex
number
Chỉ mục lịch sử tương đối mà
webview
sẽ được điều hướng. Ví dụ: giá trị2
sẽ điều hướng tiến tới 2 mục nhập nhật ký nếu có thể; giá trị-3
sẽ điều hướng lùi lại 3 mục nhập. -
số gọi lại
hàm không bắt buộc
Tham số
callback
sẽ có dạng như sau:(success: boolean) => void
-
thành công
boolean
Cho biết quá trình điều hướng có thành công hay không.
-
insertCSS()
chrome.webviewTag.insertCSS(
details: InjectDetails,
callback?: function,
)
Chèn CSS vào trang khách.
Tham số
-
chi tiết
Thông tin chi tiết về CSS cần chèn.
-
số gọi lại
hàm không bắt buộc
Tham số
callback
sẽ có dạng như sau:() => void
isAudioMuted()
chrome.webviewTag.isAudioMuted(
callback: function,
)
Truy vấn xem âm thanh có bị tắt hay không.
Tham số
-
số gọi lại
hàm
Tham số
callback
sẽ có dạng như sau:(muted: boolean) => void
-
đã tắt tiếng
boolean
-
isSpatialNavigationEnabled()
chrome.webviewTag.isSpatialNavigationEnabled(
callback: function,
)
Truy vấn xem điều hướng không gian có được bật cho chế độ xem web hay không.
Tham số
-
hàm
Tham số
callback
sẽ có dạng như sau:(enabled: boolean) => void
-
boolean
-
isUserAgentOverridden()
chrome.webviewTag.isUserAgentOverridden()
Cho biết liệu chuỗi tác nhân người dùng của webview
có bị webviewTag.setUserAgentOverride
ghi đè hay không.
loadDataWithBaseUrl()
chrome.webviewTag.loadDataWithBaseUrl(
dataUrl: string,
baseUrl: string,
virtualUrl?: string,
)
Tải một URL dữ liệu kèm theo một URL cơ sở đã chỉ định để dùng cho đường liên kết tương đối. Nếu muốn, bạn có thể cung cấp một URL ảo để cho người dùng thấy thay vì cho URL dữ liệu.
Tham số
-
dataUrl
string
URL của dữ liệu cần tải.
-
baseUrl
string
URL cơ sở sẽ được dùng cho đường liên kết tương đối.
-
virtualUrl
chuỗi không bắt buộc
URL sẽ được hiển thị cho người dùng (trong thanh địa chỉ).
print()
chrome.webviewTag.print()
In nội dung của webview
. Điều này tương đương với việc gọi hàm in theo tập lệnh từ chính webview
.
reload()
chrome.webviewTag.reload()
Tải lại trang cấp cao nhất hiện tại.
removeContentScripts()
chrome.webviewTag.removeContentScripts(
scriptNameList?: string[],
)
Xoá tập lệnh nội dung khỏi webview
.
Ví dụ sau sẽ xoá "myRule" đã được thêm trước đó.
webview.removeContentScripts(['myRule']);
Bạn có thể xoá tất cả các quy tắc bằng cách gọi:
webview.removeContentScripts();
Tham số
-
scriptNameList
string[] không bắt buộc
Danh sách tên của các tập lệnh nội dung sẽ bị xoá. Nếu danh sách này trống, tất cả tập lệnh nội dung được thêm vào
webview
sẽ bị xoá.
setAudioMuted()
chrome.webviewTag.setAudioMuted(
mute: boolean,
)
Đặt trạng thái tắt âm thanh của chế độ xem web.
Tham số
-
tắt tiếng
boolean
Giá trị tắt âm thanh
setSpatialNavigationEnabled()
chrome.webviewTag.setSpatialNavigationEnabled(
enabled: boolean,
)
Đặt trạng thái điều hướng không gian của chế độ xem web.
Tham số
-
boolean
Giá trị trạng thái điều hướng không gian.
setUserAgentOverride()
chrome.webviewTag.setUserAgentOverride(
userAgent: string,
)
Ghi đè chuỗi tác nhân người dùng mà webview
sử dụng cho các yêu cầu từ trang khách. Việc ghi đè sẽ khiến các giá trị tiêu đề Gợi ý của ứng dụng tác nhân người dùng và các giá trị do navigator.userAgentData
trả về bị trống đối với các yêu cầu của trang khách mà chế độ ghi đè này được áp dụng.
Tham số
-
userAgent
string
Chuỗi tác nhân người dùng cần sử dụng.
setZoom()
chrome.webviewTag.setZoom(
zoomFactor: number,
callback?: function,
)
Thay đổi hệ số thu phóng của trang. Phạm vi và tính bền vững của thay đổi này được xác định bởi chế độ thu phóng hiện tại của chế độ xem web (xem webviewTag.ZoomMode
).
Tham số
-
zoomFactor
number
Hệ số thu phóng mới.
-
số gọi lại
hàm không bắt buộc
Tham số
callback
sẽ có dạng như sau:() => void
setZoomMode()
chrome.webviewTag.setZoomMode(
ZoomMode: ZoomMode,
callback?: function,
)
Đặt chế độ thu phóng của webview
.
Tham số
-
ZoomMode
Xác định cách xử lý tính năng thu phóng trong
webview
. -
số gọi lại
hàm không bắt buộc
Tham số
callback
sẽ có dạng như sau:() => void
stop()
chrome.webviewTag.stop()
Dừng tải lộ trình điều hướng webview
hiện tại nếu đang thực hiện.
stopFinding()
chrome.webviewTag.stopFinding(
action?: "clear"
| "keep"
| "activate"
,
)
Kết thúc phiên tìm kiếm hiện tại (xoá tất cả lượt đánh dấu) và huỷ tất cả yêu cầu tìm đang diễn ra.
Tham số
-
hành động
không bắt buộc
Xác định việc cần làm với kết quả trùng khớp đang hoạt động sau khi phiên tìm kiếm đã kết thúc.
clear
sẽ xoá phần đánh dấu trên kết quả trùng khớp đang hoạt động;keep
sẽ làm nổi bật kết quả trùng khớp đang hoạt động;activate
sẽ làm nổi bật kết quả trùng khớp đang hoạt động và mô phỏng thao tác nhấp của người dùng vào kết quả trùng khớp đó. Hành động mặc định làkeep
.
terminate()
chrome.webviewTag.terminate()
Buộc tắt quy trình kết xuất đồ hoạ của trang web khách. Việc này có thể ảnh hưởng đến nhiều thẻ webview
trong ứng dụng hiện tại nếu các thẻ này áp dụng cùng một quy trình, nhưng sẽ không ảnh hưởng đến các thẻ webview
trong các ứng dụng khác.
Sự kiện
close
chrome.webviewTag.close.addListener(
callback: function,
)
Được kích hoạt khi cửa sổ khách cố gắng tự đóng.
Mã ví dụ sau đây sẽ điều hướng webview
đến about:blank
khi khách cố gắng tự đóng.
webview.addEventListener('close', function() {
webview.src = 'about:blank';
});
Tham số
-
số gọi lại
hàm
Tham số
callback
sẽ có dạng như sau:() => void
consolemessage
chrome.webviewTag.consolemessage.addListener(
callback: function,
)
Được kích hoạt khi cửa sổ khách ghi lại thông báo trên bảng điều khiển.
Mã ví dụ sau đây sẽ chuyển tiếp tất cả thông điệp nhật ký đến bảng điều khiển của trình nhúng mà không tính đến cấp độ nhật ký hoặc các thuộc tính khác.
webview.addEventListener('consolemessage', function(e) {
console.log('Guest page logged a message: ', e.message);
});
Tham số
-
số gọi lại
hàm
Tham số
callback
sẽ có dạng như sau:(level: number, message: string, line: number, sourceId: string) => void
-
cấp lần truy cập,
number
-
tin nhắn
string
-
dòng
number
-
sourceId
string
-
contentload
chrome.webviewTag.contentload.addListener(
callback: function,
)
Được kích hoạt khi cửa sổ khách kích hoạt sự kiện load
, tức là khi tài liệu mới được tải. Điều này không bao gồm việc điều hướng trang trong tài liệu hiện tại hoặc lượt tải tài nguyên không đồng bộ.
Mã ví dụ sau đây sửa đổi kích thước phông chữ mặc định cho phần tử body
của khách sau khi tải trang:
webview.addEventListener('contentload', function() {
webview.executeScript({ code: 'document.body.style.fontSize = "42px"' });
});
Tham số
-
số gọi lại
hàm
Tham số
callback
sẽ có dạng như sau:() => void
dialog
chrome.webviewTag.dialog.addListener(
callback: function,
)
Được kích hoạt khi cửa sổ khách cố gắng mở hộp thoại phương thức qua window.alert
, window.confirm
hoặc window.prompt
.
Việc xử lý sự kiện này sẽ chặn quá trình khách cho đến khi từng trình nghe sự kiện trả về hoặc không thể truy cập được đối tượng dialog
(nếu preventDefault()
được gọi).
Hành vi mặc định là huỷ hộp thoại.
Tham số
-
số gọi lại
hàm
Tham số
callback
sẽ có dạng như sau:(messageType: "alert"
| "confirm"
| "prompt"
, messageText: string, dialog: DialogController) => void-
messageType
-
messageText
string
-
hộp thoại
-
exit
chrome.webviewTag.exit.addListener(
callback: function,
)
Được kích hoạt khi quá trình kết xuất nội dung trên web khách đã thoát.
Mã ví dụ sau sẽ hiển thị thông báo tạm biệt bất cứ khi nào trang khách gặp sự cố:
webview.addEventListener('exit', function(e) {
if (e.reason === 'crash') {
webview.src = 'data:text/plain,Goodbye, world!';
}
});
Tham số
-
số gọi lại
hàm
Tham số
callback
sẽ có dạng như sau:(processID: number, reason: "normal"
| "abnormal"
| "crash"
| "kill"
) => void-
processID
number
-
lý do
-
findupdate
chrome.webviewTag.findupdate.addListener(
callback: function,
)
Được kích hoạt khi có kết quả tìm kiếm mới cho một yêu cầu tìm đang hoạt động. Tình trạng này có thể xảy ra nhiều lần cho một yêu cầu tìm kiếm khi tìm thấy kết quả trùng khớp.
Tham số
-
số gọi lại
hàm
Tham số
callback
sẽ có dạng như sau:(searchText: string, numberOfMatches: number, activeMatchOrdinal: number, selectionRect: SelectionRect, canceled: boolean, finalUpdate: string) => void
-
searchText
string
-
numberOfMatches
number
-
activeMatchOrdinal
number
-
selectionRect
-
đã huỷ
boolean
-
finalUpdate
string
-
loadabort
chrome.webviewTag.loadabort.addListener(
callback: function,
)
Được kích hoạt khi một lượt tải cấp cao nhất bị huỷ bỏ mà không cam kết. Một thông báo lỗi sẽ xuất hiện trên bảng điều khiển trừ phi sự kiện đó được ngăn chặn theo mặc định.
Lưu ý: Khi một lượt tải tài nguyên bị huỷ bỏ, sự kiện loadabort
sẽ dẫn đến một sự kiện loadstop
, ngay cả khi tất cả các lượt tải được cam kết kể từ sự kiện loadstop
gần đây nhất (nếu có) đã bị huỷ.
Lưu ý: Khi huỷ tải một URL về URL hoặc một URL JavaScript, loadabort
sẽ được kích hoạt và sau đó webview
sẽ được điều hướng đến "about:blank".
Tham số
-
số gọi lại
hàm
Tham số
callback
sẽ có dạng như sau:(url: string, isTopLevel: boolean, code: number, reason: "ERR_ABORTED"
| "ERR_INVALID_URL"
| "ERR_DISALLOWED_URL_SCHEME"
| "ERR_BLOCKED_BY_CLIENT"
| "ERR_ADDRESS_UNREACHABLE"
| "ERR_EMPTY_RESPONSE"
| "ERR_FILE_NOT_FOUND"
| "ERR_UNKNOWN_URL_SCHEME"
) => void-
url
string
-
isTopLevel
boolean
-
mã
number
-
lý do
"ERR_ABORTED"
| "ERR_INVALID_URL"
| "ERR_DISALLOWED_URL_SCHEME"
| "ERR_BLOCKED_BY_CLIENT"
| "ERR_ADDRESS_UNABLE"
| "ERR_EMPTY_REVIEW|"
-
loadcommit
chrome.webviewTag.loadcommit.addListener(
callback: function,
)
Được kích hoạt khi một tải được xác nhận. Điều này bao gồm điều hướng trong tài liệu hiện tại cũng như tải cấp tài liệu khung phụ, nhưng không bao gồm tải tài nguyên không đồng bộ.
Tham số
-
số gọi lại
hàm
Tham số
callback
sẽ có dạng như sau:(url: string, isTopLevel: boolean) => void
-
url
string
-
isTopLevel
boolean
-
loadredirect
chrome.webviewTag.loadredirect.addListener(
callback: function,
)
Được kích hoạt khi yêu cầu tải cấp cao nhất đã chuyển hướng đến một URL khác.
Tham số
-
số gọi lại
hàm
Tham số
callback
sẽ có dạng như sau:(oldUrl: string, newUrl: string, isTopLevel: boolean) => void
-
oldUrl
string
-
newUrl
string
-
isTopLevel
boolean
-
loadstart
chrome.webviewTag.loadstart.addListener(
callback: function,
)
Được kích hoạt khi một lượt tải bắt đầu.
Tham số
-
số gọi lại
hàm
Tham số
callback
sẽ có dạng như sau:(url: string, isTopLevel: boolean) => void
-
url
string
-
isTopLevel
boolean
-
loadstop
chrome.webviewTag.loadstop.addListener(
callback: function,
)
Được kích hoạt khi tất cả cấp khung hình đã tải xong trong một trang khách (bao gồm tất cả các khung phụ của trang). Điều này bao gồm điều hướng trong tài liệu hiện tại cũng như tải cấp tài liệu khung phụ, nhưng không bao gồm tải tài nguyên không đồng bộ. Sự kiện này sẽ kích hoạt mỗi khi số lượt tải cấp tài liệu chuyển đổi từ 1 (hoặc nhiều) sang 0. Ví dụ: nếu một trang đã tải xong (tức là loadstop
đã kích hoạt một lần) tạo một iframe mới để tải trang, sau đó loadstop
thứ hai sẽ kích hoạt khi quá trình tải trang iframe hoàn tất. Mẫu này thường thấy trên những trang tải quảng cáo.
Lưu ý: Khi một lượt tải đã cam kết bị huỷ bỏ, sự kiện loadstop
cuối cùng sẽ tuân theo sự kiện loadabort
, ngay cả khi mọi lượt tải được cam kết kể từ sự kiện loadstop
gần đây nhất (nếu có) đã bị huỷ.
Tham số
-
số gọi lại
hàm
Tham số
callback
sẽ có dạng như sau:() => void
newwindow
chrome.webviewTag.newwindow.addListener(
callback: function,
)
Được kích hoạt khi trang khách cố gắng mở một cửa sổ trình duyệt mới.
Mã ví dụ sau đây sẽ tạo và điều hướng một webview
mới trong trình nhúng cho mỗi cửa sổ mới được yêu cầu:
webview.addEventListener('newwindow', function(e) {
var newWebview = document.createElement('webview');
document.body.appendChild(newWebview);
e.window.attach(newWebview);
});
Tham số
-
số gọi lại
hàm
Tham số
callback
sẽ có dạng như sau:(window: NewWindow, targetUrl: string, initialWidth: number, initialHeight: number, name: string, windowOpenDisposition: "ignore"
| "save_to_disk"
| "current_tab"
| "new_background_tab"
| "new_foreground_tab"
| "new_window"
| "new_popup"
) => void-
cửa sổ
-
targetUrl
string
-
initialWidth
number
-
initialHeight
number
-
tên
string
-
windowOpenDisposition
"ignore"
| "save_to_disk"
| "current_tab"
| "new_background_tab"
| "new_foreground_tab"
| "new_window"
| "new_pop"
-
permissionrequest
chrome.webviewTag.permissionrequest.addListener(
callback: function,
)
Được kích hoạt khi trang khách cần yêu cầu quyền đặc biệt từ trình nhúng.
Mã ví dụ sau đây sẽ cấp cho trang khách quyền truy cập vào API webkitGetUserMedia
. Xin lưu ý rằng ứng dụng dùng mã ví dụ này phải tự chỉ định các quyền đối với tệp kê khai audioCapture
và/hoặc videoCapture
:
webview.addEventListener('permissionrequest', function(e) {
if (e.permission === 'media') {
e.request.allow();
}
});
Tham số
-
số gọi lại
hàm
Tham số
callback
sẽ có dạng như sau:(permission: "media"
| "geolocation"
| "pointerLock"
| "download"
| "loadplugin"
| "filesystem"
| "fullscreen"
| "hid"
, request: object) => void-
quyền
"media"
| "geolocation"
| "pointerLock"
| "download"
| "loadplugin"
| "filesystem"
| "toàn màn hình"
| "hid"
-
request
đối tượng
-
responsive
chrome.webviewTag.responsive.addListener(
callback: function,
)
Được kích hoạt khi quá trình hiển thị nội dung trên web của khách đã phản hồi lại sau khi không phản hồi.
Mã ví dụ sau đây sẽ làm mờ hoặc hiện dần phần tử webview
khi phần tử này phản hồi hoặc không phản hồi:
webview.style.webkitTransition = 'opacity 250ms';
webview.addEventListener('unresponsive', function() {
webview.style.opacity = '0.5';
});
webview.addEventListener('responsive', function() {
webview.style.opacity = '1';
});
Tham số
-
số gọi lại
hàm
Tham số
callback
sẽ có dạng như sau:(processID: number) => void
-
processID
number
-
sizechanged
chrome.webviewTag.sizechanged.addListener(
callback: function,
)
Được kích hoạt khi nội dung web nhúng thay đổi kích thước qua autosize
. Chỉ kích hoạt nếu autosize
được bật.
Tham số
-
số gọi lại
hàm
Tham số
callback
sẽ có dạng như sau:(oldWidth: number, oldHeight: number, newWidth: number, newHeight: number) => void
-
oldWidth
number
-
oldHeight
number
-
newWidth
number
-
newHeight
number
-
unresponsive
chrome.webviewTag.unresponsive.addListener(
callback: function,
)
Được kích hoạt khi quá trình hiển thị nội dung trên web khách không phản hồi. Sự kiện này sẽ được tạo một lần với một sự kiện thích ứng phù hợp nếu khách bắt đầu phản hồi lại.
Tham số
-
số gọi lại
hàm
Tham số
callback
sẽ có dạng như sau:(processID: number) => void
-
processID
number
-
zoomchange
chrome.webviewTag.zoomchange.addListener(
callback: function,
)
Được kích hoạt khi mức thu phóng của trang thay đổi.
Tham số
-
số gọi lại
hàm
Tham số
callback
sẽ có dạng như sau:(oldZoomFactor: number, newZoomFactor: number) => void
-
oldZoomFactor
number
-
newZoomFactor
number
-