chrome.webviewTag

Mô tả

Sử dụng thẻ webview để chủ động tải nội dung phát trực tiếp từ web qua mạng và nhúng nội dung đó vào Ứng dụng Chrome của bạn. Ứ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 trên web, bắt đầu thao tác điều hướng trong một trang web được nhúng, phản ứng với các sự kiện lỗi xảy ra trong đó, v.v. (xem phần Cách sử dụng).

Quyền

webview

Loại

ClearDataOptions

Các lựa chọn xác định dữ liệu mà clearData sẽ xoá.

Thuộc tính

  • từ

    number không bắt buộc

    Xoá dữ liệu được tích luỹ từ ngày này trở đi, được biểu thị bằng mili giây kể từ thời điểm bắt đầu (có thể truy cập thông qua phương thức getTime của đối tượng Date JavaScript). Nếu không có, giá trị mặc định là 0 (thao tác này sẽ xoá tất cả dữ liệu duyệt web).

ClearDataTypeSet

Một tập hợp các loại dữ liệu. Các thuộc tính bị thiếu được diễn giải là false.

Thuộc tính

  • appcache

    boolean không bắt buộc

    Appcache của trang web.

  • bộ nhớ đệm

    boolean không bắt buộc

    Chrome 44 trở lên

    Kể từ Chrome 43. Bộ nhớ đệm của trình duyệt. Lưu ý: khi xoá dữ liệu, thao tác này sẽ xoá toàn bộ bộ nhớ đệm, chứ không chỉ giới hạn trong phạm vi mà 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 trong bộ nhớ cục bộ của trang web.

  • persistentCookies

    boolean không bắt buộc

    Chrome 58 trở lên

    Cookie liên tục của phân vùng.

  • sessionCookies

    boolean không bắt buộc

    Chrome 58 trở lên

    Cookie phiên của phân vùng.

  • webSQL

    boolean không bắt buộc

    Dữ liệu WebSQL của các trang web.

ContentScriptDetails

Chrome 44 trở lên

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 thông tin chi tiết.

Thuộc tính

  • all_frames

    boolean không bắt buộc

    Nếu all_framestrue, điều này có nghĩa là JavaScript hoặc CSS sẽ được chèn vào tất cả các khung của trang hiện tại. Theo mặc định, all_framesfalse 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 sẽ được chèn 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, trước khi bất kỳ DOM nào được tạo hoặc hiển thị cho trang.

  • exclude_globs

    string[] không bắt buộc

    Được áp dụng sau khi so khớp để loại trừ những URL khớp với mẫu này. Dự định mô phỏng từ khoá @exclude của Greasemonkey.

  • exclude_matches

    string[] không bắt buộc

    Loại trừ những 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

    Được áp dụng sau khi so khớp để chỉ bao gồm những URL cũng khớp với mẫu chung này. Dùng để mô phỏng từ khoá @include của Greasemonkey.

  • js

    InjectionItems không bắt buộc

    Mã JavaScript hoặc danh sách các tệp JavaScript sẽ được chèn 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

    Có 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 chèn vào các trang khi URL kế thừa của tập lệnh đó khớp với một trong các mẫu đã khai báo trong trường matches. 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 các khung được cách ly.

  • khớp với

    string[]

    Chỉ định những trang mà tập lệnh nội dung này sẽ được chèn vào.

  • tên

    chuỗi

    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 điểm sớm nhất mà JavaScript hoặc CSS sẽ được chèn vào thẻ. Giá trị mặc định là "document_idle".

ContentWindow

Xử lý việc nhắn tin cho cửa sổ khách.

Thuộc tính

  • postMessage

    void

    Đăng một thông báo cho nội dung web được nhúng, miễn là nội dung được nhúng đó đang hiển thị một trang từ nguồn gốc mục tiêu. Phương thức này sẽ có sẵn sau khi trang tải xong. Theo dõi sự kiện contentload rồi gọi phương thức.

    Khách có thể gửi câu trả lời cho người nhúng bằng cách đăng tin nhắn lên event.source trong sự kiện tin nhắn mà khách nhận được.

    API này giống với HTML5 postMessage API để giao tiếp giữa các trang web. Trình nhúng có thể theo dõi các phản hồi bằng cách thêm một trình nghe sự kiện message vào khung hình của chính nó.

    Hàm postMessage 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

      chuỗi

      Chỉ định nguồn gốc của cửa sổ khách để sự kiện được gửi đi.

ContextMenuCreateProperties

Chrome 44 trở lên

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 nếu được chọn và false nếu không được chọn. Bạn chỉ có thể chọn một mục trong nhóm nút chọn tại một thời điểm.

  • ngữ cảnh

    [ContextType, ...ContextType[]] không bắt buộc

    Danh sách các bối cảnh mà mục trong trình đơn này sẽ xuất hiện. Mặc định là ['page'] nếu bạn không chỉ định.

  • documentUrlPatterns

    string[] không bắt buộc

    Cho phép bạn hạn chế mục chỉ áp dụng cho những tài liệu có URL khớp với một trong các mẫu đã cho. (Điều này cũng áp dụng cho khung hình.) Để biết thông tin chi tiết về định dạng của mẫu, hãy xem phần Mẫu so khớp.

  • đang bật

    boolean không bắt buộc

    Mục trình đơn ngữ cảnh này được 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 để chỉ định cho mặt hàng này. Bắt buộc đối với các trang sự kiện. Không được trùng với một mã nhận dạng khác cho tiện ích này.

  • parentId

    string | number không bắt buộc

    Mã nhận dạng của một mục trong trình đơn mẹ; mã này sẽ biến mục đó thành mục con của một 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ẻ liên kết.

  • tiêu đề

    chuỗi không bắt buộc

    Văn bản sẽ xuất hiện trong mục; đây là thông tin bắt buộc, trừ phi type là "separator". Khi ngữ cảnh là "selection", 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à "Dịch "%s" sang tiếng Lợn" và người dùng chọn từ "cool", thì mục trong trình đơn theo bối cảnh cho lựa chọn này là "Dịch "cool" sang tiếng Lợn".

  • loại

    ItemType không bắt buộc

    Loại mục trong trình đơn. Mặc định là "normal" nếu không được chỉ định.

  • onclick

    void optional

    Một 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 có dạng như sau:

    (info: OnClickData) => {...}

    • Thông tin về mặt hàng được nhấp vào và bối cảnh xảy ra lượt nhấp.

ContextMenus

Chrome 44 trở lên

Thuộc tính

  • onShow

    Event<functionvoidvoid>

    Được kích hoạt trước khi hiển thị trình đơn theo bối cảnh trên webview này. Có thể dùng để tắt trình đơn theo bối cảnh này bằng cách gọi event.preventDefault().

    Hàm onShow.addListener có dạng như sau:

    (callback: function) => {...}

    • callback

      hàm

      Tham số callback có dạng như sau:

      (event: object) => void

      • event

        đối tượng

        • preventDefault

          void

          Gọi phương thức này để ngăn trình đơn theo bối cảnh xuất hiện.

          Hàm preventDefault có dạng như sau:

          () => {...}

  • create

    void

    Tạo một mục mới trong trình đơn ngữ cảnh. Xin lưu ý rằng nếu xảy ra lỗi trong quá trình tạo, bạn có thể không biết cho đến khi lệnh gọi lại tạo kích hoạt (thông tin chi tiết sẽ có trong runtime.lastError).

    Hàm create có dạng như sau:

    (createProperties: object, callback?: function) => {...}

    • createProperties

      đối tượng

      Các thuộc tính được dùng để tạo mục

    • callback

      hàm không bắt buộc

      Tham số callback có dạng như sau:

      () => void

    • returns

      chuỗi | số

      Mã nhận dạng 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 có dạng như sau:

    (menuItemId: string | number, callback?: function) => {...}

    • menuItemId

      chuỗi | số

      Mã của mục trong trình đơn theo bối cảnh cần xoá.

    • callback

      hàm không bắt buộc

      Tham số callback có dạng như sau:

      () => void

  • removeAll

    void

    Xoá tất cả các mục trong trình đơn theo bối cảnh đã thêm vào webview này.

    Hàm removeAll có dạng như sau:

    (callback?: function) => {...}

    • callback

      hàm không bắt buộc

      Tham số callback 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 có dạng như sau:

    (id: string | number, updateProperties: object, callback?: function) => {...}

    • id

      chuỗi | số

      Mã nhận dạng của mặt hàng 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 tạo.

    • callback

      hàm không bắt buộc

      Tham số callback có dạng như sau:

      () => void

ContextMenuUpdateProperties

Chrome 44 trở lên

Thuộc tính

  • đã chọn

    boolean không bắt buộc

    Trạng thái của một mục hộp đánh dấu hoặc nút chọn: true nếu được chọn và false nếu không được chọn. Bạn chỉ có thể chọn một mục trong nhóm nút chọn tại một thời điểm.

  • ngữ cảnh

    [ContextType, ...ContextType[]] không bắt buộc

    Danh sách các bối cảnh mà mục trong trình đơn này sẽ xuất hiện.

  • documentUrlPatterns

    string[] không bắt buộc

    Cho phép bạn hạn chế mục chỉ áp dụng cho những tài liệu có URL khớp với một trong các mẫu đã cho. (Điều này cũng áp dụng cho khung hình.) Để biết thông tin chi tiết về định dạng của mẫu, hãy xem phần Mẫu so khớp.

  • đang bật

    boolean không bắt buộc

    Mục trình đơn ngữ cảnh này được bật hay tắt.

  • parentId

    string | number không bắt buộc

    Mã nhận dạng của một mục trong trình đơn mẹ; mã này sẽ biến mục đó thành mục con của một mục đã thêm trước đó. Lưu ý: Bạn không thể thay đổi một mục thành mục con của một trong các mục con của chính 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ẻ liên kết.

  • tiêu đề

    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

    void optional

    Một 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 có dạng như sau:

    (info: OnClickData) => {...}

    • Thông tin về mặt hàng được nhấp vào và bối cảnh xảy ra lượt nhấp.

ContextType

Chrome 44 trở lên

Các bối cảnh khác nhau mà trình đơn có thể xuất hiện. Việc chỉ định "all" (tất cả) tương đương với việc kết hợp tất cả các bối cảnh khác.

Enum

"tất cả"

"page"

"frame"

"selection"

"link"

"editable"

"image"

"video"

"audio"

DialogController

Giao diện được đính kèm vào các sự kiện DOM dialog.

Thuộc tính

  • hủy

    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ặc prompt.

    Hàm cancel 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ặc prompt.

    Hàm ok 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 để cung cấp cho khách khi chấp nhận hộp thoại prompt.

DialogMessageType

Đang chờ xử lý

Loại hộp thoại phương thức mà khách yêu cầu.

Enum

"alert"

"confirm"

"prompt"

DownloadPermissionRequest

Loại đối tượng request đi kèm với sự kiện DOM download permissionrequest.

Thuộc tính

  • requestMethod

    chuỗi

    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

    chuỗi

    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 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 bạn không gọi allow.

    Hàm deny có dạng như sau:

    () => {...}

ExitReason

Đang chờ xử lý

Chuỗi cho biết lý do thoát.

Enum

"normal"

"abnormal"

"bị lỗi"

"killed"

"oom killed"

"oom"

"không khởi chạy được"

"lỗi về tính toàn vẹn"

FileSystemPermissionRequest

Loại đối tượng request đi kèm với sự kiện DOM filesystem permissionrequest.

Thuộc tính

  • url

    chuỗi

    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 có dạng như sau:

    () => {...}

  • từ chối

    void

    Từ chối yêu cầu cấp quyền.

    Hàm deny 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

    số

    Số thứ tự của trận đấu hiện tại.

  • đã huỷ

    boolean

    Cho biết liệu yêu cầu tìm kiếm này có bị huỷ hay không.

  • numberOfMatches

    số

    Số lần searchText được so khớp trên trang.

  • selectionRect

    Mô tả một hình chữ nhật xung quanh kết quả trùng khớp đang hoạt động theo toạ độ màn hình.

FindOptions

Các lựa chọn cho yêu cầu tìm.

Thuộc tính

  • backward

    boolean không bắt buộc

    Cờ để tìm kết quả trùng khớp theo thứ tự đảo ngược. Giá trị mặc định là false.

  • matchCase

    boolean không bắt buộc

    Cờ để so khớp có phân biệt chữ hoa chữ thường. Giá trị mặc định là false.

FullscreenPermissionRequest

Chrome 43 trở lên

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

    chuỗi

    Nguồn gốc của khung bên trong webview đã bắt đầu 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 có dạng như sau:

    () => {...}

  • từ chối

    void

    Từ chối yêu cầu cấp quyền.

    Hàm deny 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

    chuỗi

    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 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 bạn không gọi allow.

    Hàm deny có dạng như sau:

    () => {...}

HidPermissionRequest

Chrome 125 trở lên

Loại đối tượng request đi kèm với sự kiện DOM hid permissionrequest.

Thuộc tính

  • url

    chuỗi

    URL của khung yêu cầu quyền truy cập vào API HID.

  • allow

    void

    Cho phép yêu cầu cấp quyền.

    Hàm allow 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 bạn không gọi allow.

    Hàm deny 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 được đặt cả hai cùng một lúc.

Thuộc tính

  • chuỗi không bắt buộc

    Mã JavaScript hoặc CSS để chèn.

    Cảnh báo: Hãy cẩn thận khi sử dụng tham số code. Việc sử dụng không đúng cách có thể khiến ứng dụng của bạn dễ bị tấn công bằng tập lệnh chéo trang.

  • tệp

    chuỗi không bắt buộc

    Tệp JavaScript hoặc CSS để chèn.

InjectionItems

Chrome 44 trở lên

Loại mục chèn: mã hoặc một nhóm tệp.

Thuộc tính

  • chuỗi không bắt buộc

    Mã JavaScript hoặc CSS sẽ được chèn 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 chèn vào các trang phù hợp. Các đối tượng này được chèn theo thứ tự xuất hiện trong mảng này.

LoadAbortReason

Đang chờ xử lý

Chuỗi cho biết loại thao tác huỷ nào đã xảy ra. Chuỗi này không đảm bảo khả năng tương thích ngược giữa các bản phát hành. Bạn không được phân tích cú pháp và hành động dựa trên nội dung của thông báo này. Trong một số trường hợp, cũng có thể xảy ra lỗi không có trong danh sách này.

Enum

"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"

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

    chuỗi

    Chuỗi giá trị nhận dạng của trình bổ trợ.

  • tên

    chuỗi

    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 bạn không gọi deny.

    Hàm allow có dạng như sau:

    () => {...}

  • từ chối

    void

    Từ chối yêu cầu cấp quyền.

    Hàm deny 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

    chuỗi

    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 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 bạn không gọi allow.

    Hàm deny có dạng như sau:

    () => {...}

NewWindow

Giao diện được đính kèm vào các 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 một phần tử webview hiện có.

    Hàm attach có dạng như sau:

    (webview: object) => {...}

    • webview

      đối tượng

      Phần tử webview mà trang đích sẽ được đính kèm.

  • hủy

    void

    Huỷ yêu cầu mở cửa sổ mới.

    Hàm discard có dạng như sau:

    () => {...}

PermissionType

Đang chờ xử lý

Loại quyền được yêu cầu.

Enum

"media"

"geolocation"

"pointerLock"

"download"

"loadplugin"

"filesystem"

"fullscreen"

"hid"

PointerLockPermissionRequest

Loại đối tượng request đi kèm với sự kiện DOM pointerLock permissionrequest.

Thuộc tính

  • lastUnlockedBySelf

    boolean

    Khung yêu cầu có phải là ứng dụng gần đây nhất giữ chế độ khoá con trỏ hay không.

  • url

    chuỗi

    URL của khung yêu cầu khoá con trỏ.

  • userGesture

    boolean

    Có hay không yêu cầu khoá con trỏ do cử chỉ nhập của người dùng.

  • allow

    void

    Cho phép yêu cầu cấp quyền.

    Hàm allow 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 bạn không gọi allow.

    Hàm deny có dạng như sau:

    () => {...}

SelectionRect

Mô tả một hình chữ nhật theo toạ độ màn hình.

Ngữ nghĩa ngăn chặn giống như mảng; tức là toạ độ (left, top) được coi là nằm trong hình chữ nhật, nhưng toạ độ (left + width, top) thì không.

Thuộc tính

  • độ cao

    số

    Chiều cao của hình chữ nhật.

  • trái

    số

    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

    số

    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

    số

    Chiều rộng của hình chữ nhật.

StopFindingAction

Đang chờ xử lý

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 làm nổi bật trên kết quả trùng khớp đang hoạt động; keep sẽ giữ phần làm nổi bật kết quả trùng khớp đang hoạt động; activate sẽ giữ phần làm nổi bật kết quả trùng khớp đang hoạt động và mô phỏng lượt nhấp của người dùng vào kết quả trùng khớp đó. Thao tác mặc định là keep.

Enum

"clear"

"keep"

"activate"

WebRequestEventInterface

Chrome 44 trở lên

Giao diện cung cấp quyền truy cập vào các sự kiện webRequest trên trang khách. Hãy 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 liên quan. Lưu ý: Sự kiện chrome.webRequest.onActionIgnored không được hỗ trợ cho các khung hiển thị web.

Để minh hoạ cách sử dụng khác với API webRequest của tiện ích, hãy xem xét đoạn mã ví dụ sau đây. Đoạn mã này chặn mọi yêu cầu của khách đối với những 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 onRequestonMessage. Hãy 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 webRequest webview khai báo phải được khởi tạo từ các đối tượng chrome.webViewRequest.* tương ứng. Đoạn mã ví dụ sau đây chặn tất cả các yêu cầu đến "example.com" trên webview myWebview theo cách khai báo:

var rule = {
  conditions: [
    new chrome.webViewRequest.RequestMatcher({ url: { hostSuffix: 'example.com' } })
  ],
  actions: [ new chrome.webViewRequest.CancelRequest() ]
};
myWebview.request.onRequest.addRules([rule]);

WindowOpenDisposition

Đang chờ xử lý

Trạng thái được yêu cầu của cửa sổ mới.

Enum

"ignore"

"save_to_disk"

"current_tab"

"new_background_tab"

"new_foreground_tab"

"new_window"

"new_popup"

ZoomMode

Chrome 43 trở lên

Xác định cách xử lý thao tác thu phóng trong webview.

Enum

"per-origin"
Các thay đổi về mức thu phóng sẽ duy trì trong nguồn gốc của trang được thu phóng, tức là tất cả các webview khác trong cùng một phân vùng được chuyển đến cùng một nguồn gốc đó cũng sẽ được thu phóng. Ngoài ra, các thay đổi về chế độ thu phóng per-origin sẽ được lưu cùng với nguồn gốc, tức là khi bạn chuyển đến các trang khác trong cùng một nguồn gốc, tất cả các trang đó sẽ được thu phóng theo cùng một hệ số thu phóng.

"mỗi lượt xem"
Các thay đổi về mức thu phóng chỉ có hiệu lực trong webview này và các thay đổi về mức thu phóng trong những webview khác sẽ không ảnh hưởng đến mức thu phóng của webview này. Ngoài ra, chế độ thu phóng per-view sẽ được đặt lại khi điều hướng; việc điều hướng một khung hiển thị web sẽ luôn tải các trang có hệ số thu phóng theo nguồn gốc (trong phạm vi phân vùng).

"disabled"
Tắt tất cả các thao tác thu phóng trong webview. Nội dung sẽ trở về mức thu phóng mặc định và mọi thay đổi về mức thu phóng mà bạn đã thử đều sẽ bị bỏ qua.

Thuộc tính

contentWindow

Tham chiếu đối tượng có thể dùng để đăng thông báo vào trang khách.

Loại

contextMenus

Chrome 44 trở lên

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 loại đối tượng mà nội dung bổ sung trong trình đơn theo bối cảnh sẽ áp dụng, 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 44 trở lên
chrome.webviewTag.addContentScripts(
  contentScriptList: [ContentScriptDetails, ...ContentScriptDetails[]],
)
: void

Thêm các quy tắc chèn tập lệnh nội dung vào webview. Khi webview chuyển đến một trang khớp với một hoặc nhiều quy tắc, các tập lệnh được 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 cách lập trình.

Ví dụ sau đây sẽ thêm 2 quy tắc vào 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ể hoãn lệnh gọi addContentScripts cho đến khi cần chèn tập lệnh.

Ví dụ sau đây minh hoạ 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 nguồn (ví dụ: foo.com) và gọi webview.addContentScripts để thêm "myRule", bạn cần đợi lần điều hướng tiếp theo để các tập lệnh được chèn. Nếu bạn muốn tiêm ngay, executeScript sẽ làm điều đúng đắn.

Các quy tắc vẫn được giữ nguyên ngay cả khi quy trình khách gặp sự cố hoặc bị huỷ, hoặc ngay cả khi webview được đổi thành quy trình mẹ.

Tham khảo tài liệu về tập lệnh nội dung để biết thêm thông tin chi tiết.

Thông số

back()

chrome.webviewTag.back(
  callback?: function,
)
: void

Điều hướng ngược lại một mục trong nhật ký nếu có thể. Tương đương với go(-1).

Thông số

  • callback

    hàm không bắt buộc

    Chrome 44 trở lên

    Tham số callback có dạng như sau:

    (success: boolean) => void

    • thành công

      boolean

      Cho biết liệu thao tác điều hướng có thành công hay không.

canGoBack()

chrome.webviewTag.canGoBack(): boolean

Cho biết có thể quay lại lịch sử hay không. Trạng thái của hàm này được lưu vào bộ nhớ đệm và cập nhật trước mỗi loadcommit, vì vậy, vị trí tốt nhất để gọi hàm này là trên loadcommit.

Giá trị trả về

  • boolean

canGoForward()

chrome.webviewTag.canGoForward(): boolean

Cho biết liệu có thể chuyển tiếp qua 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ập nhật trước mỗi loadcommit, vì vậy, vị trí tốt nhất để gọi hàm này là trên loadcommit.

Giá trị trả về

  • boolean

captureVisibleRegion()

Chrome 50 trở lên
chrome.webviewTag.captureVisibleRegion(
  options?: ImageDetails,
  callback: function,
)
: void

Chụp vùng hiển thị của chế độ xem web.

Thông số

  • tùy chọn

    ImageDetails không bắt buộc

  • callback

    hàm

    Tham số callback có dạng như sau:

    (dataUrl: string) => void

    • dataUrl

      chuỗi

      Một URL dữ liệu mã hoá hình ảnh của vùng hiển thị của thẻ được chụp. Có thể được chỉ định cho thuộc tính "src" của phần tử Hình ảnh HTML để hiển thị.

clearData()

chrome.webviewTag.clearData(
  options: ClearDataOptions,
  types: ClearDataTypeSet,
  callback?: function,
)
: void

Xoá dữ liệu duyệt web cho phân vùng webview.

Thông số

  • tùy chọn

    Các lựa chọn xác định dữ liệu cần xoá.

  • Các loại dữ liệu cần xoá.

  • callback

    hàm không bắt buộc

    Tham số callback có dạng như sau:

    () => void

executeScript()

chrome.webviewTag.executeScript(
  details: InjectDetails,
  callback?: function,
)
: void

Chèn mã JavaScript vào trang khách.

Đoạn 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'" });

Thông số

  • chi tiết

    Thông tin chi tiết về tập lệnh cần chạy.

  • callback

    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 hình được chèn.

find()

chrome.webviewTag.find(
  searchText: string,
  options?: FindOptions,
  callback?: function,
)
: void

Khởi tạo một yêu cầu tìm kiếm trên trang.

Thông số

  • searchText

    chuỗi

    Chuỗi cần tìm trong trang.

  • tùy chọn

    FindOptions không bắt buộc

    Các lựa chọn cho yêu cầu tìm.

  • callback

    hàm không bắt buộc

    Tham số callback 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 không sử dụng trong phần nội dung của hàm gọi lại; ví dụ: nếu lệnh gọi lại chỉ được dùng để phân biệt thời điểm yêu cầu tìm hoàn tất.

forward()

chrome.webviewTag.forward(
  callback?: function,
)
: void

Chuyển tiếp một mục trong nhật ký nếu có thể. Tương đương với go(1).

Thông số

  • callback

    hàm không bắt buộc

    Chrome 44 trở lên

    Tham số callback có dạng như sau:

    (success: boolean) => void

    • thành công

      boolean

      Cho biết liệu thao tác điều hướng có thành công hay không.

getAudioState()

Chrome 62 trở lên
chrome.webviewTag.getAudioState(
  callback: function,
)
: void

Truy vấn trạng thái âm thanh.

Thông số

  • callback

    hàm

    Tham số callback có dạng như sau:

    (audible: boolean) => void

    • audible

      boolean

getProcessId()

chrome.webviewTag.getProcessId(): number

Trả về mã nhận dạng quy trình nội bộ của Chrome cho quy trình hiện tại của trang web dành cho khách, cho phép các trình nhúng biết có bao nhiêu khách sẽ bị ảnh hưởng khi quy trình này kết thúc. Hai khách sẽ chỉ dùng chung một quy trình nếu thuộc cùng một ứng dụng và có cùng mã nhận dạng phân vùng lưu trữ. Lệnh gọi này là đồng bộ và trả về khái niệm được lưu vào bộ nhớ đệm của trình nhúng về mã nhận dạng quy 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ề

  • số

getUserAgent()

chrome.webviewTag.getUserAgent(): string

Trả về chuỗi tác nhân người dùng mà webview dùng cho các yêu cầu trang của khách.

Giá trị trả về

  • chuỗi

getZoom()

chrome.webviewTag.getZoom(
  callback: function,
)
: void

Lấy hệ số thu phóng hiện tại.

Thông số

  • callback

    hàm

    Tham số callback có dạng như sau:

    (zoomFactor: number) => void

    • zoomFactor

      số

      Hệ số thu phóng hiện tại.

getZoomMode()

Chrome 43 trở lên
chrome.webviewTag.getZoomMode(
  callback: function,
)
: void

Lấy chế độ thu phóng hiện tại.

Thông số

  • callback

    hàm

    Tham số callback 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,
)
: void

Chuyển đến một mục trong nhật ký bằng cách sử dụng chỉ mục nhật ký tương ứng với hoạt động điều hướng hiện tại. Nếu không thể thực hiện thao tác điều hướng được yêu cầu, thì phương thức này sẽ không có hiệu lực.

Thông số

  • relativeIndex

    số

    Chỉ mục nhật ký tương đối mà webview sẽ được điều hướng đến. Ví dụ: giá trị 2 sẽ chuyển tiếp 2 mục trong nhật ký nếu có thể; giá trị -3 sẽ chuyển về 3 mục.

  • callback

    hàm không bắt buộc

    Tham số callback có dạng như sau:

    (success: boolean) => void

    • thành công

      boolean

      Cho biết liệu thao tác điều hướng có thành công hay không.

insertCSS()

chrome.webviewTag.insertCSS(
  details: InjectDetails,
  callback?: function,
)
: void

Chèn CSS vào trang khách.

Thông số

  • chi tiết

    Thông tin chi tiết về CSS cần chèn.

  • callback

    hàm không bắt buộc

    Tham số callback có dạng như sau:

    () => void

isAudioMuted()

Chrome 62 trở lên
chrome.webviewTag.isAudioMuted(
  callback: function,
)
: void

Truy vấn xem âm thanh có bị tắt tiếng hay không.

Thông số

  • callback

    hàm

    Tham số callback có dạng như sau:

    (muted: boolean) => void

    • đã tắt tiếng

      boolean

isSpatialNavigationEnabled()

Chrome 71 trở lên
chrome.webviewTag.isSpatialNavigationEnabled(
  callback: function,
)
: void

Truy vấn xem chế độ điều hướng bằng không gian có được bật cho chế độ xem web hay không.

Thông số

  • callback

    hàm

    Tham số callback có dạng như sau:

    (enabled: boolean) => void

    • đang bật

      boolean

isUserAgentOverridden()

chrome.webviewTag.isUserAgentOverridden(): void

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,
)
: void

Tải một URL dữ liệu có URL cơ sở được chỉ định dùng cho các đường liên kết tương đối. Ngoài ra, bạn có thể cung cấp một URL ảo để hiển thị cho người dùng thay vì URL dữ liệu.

Thông số

  • dataUrl

    chuỗi

    URL dữ liệu cần tải.

  • baseUrl

    chuỗi

    URL cơ sở sẽ được dùng cho các đường liên kết tương đối.

  • virtualUrl

    chuỗi không bắt buộc

    URL sẽ hiển thị cho người dùng (trong thanh địa chỉ).

print()

chrome.webviewTag.print(): void

In nội dung của webview. Điều này tương đương với việc gọi hàm in theo kịch bản từ chính webview.

reload()

chrome.webviewTag.reload(): void

Tải lại trang cấp cao nhất hiện tại.

removeContentScripts()

Chrome 44 trở lên
chrome.webviewTag.removeContentScripts(
  scriptNameList?: string[],
)
: void

Xoá tập lệnh nội dung khỏi một webview.

Ví dụ sau đây 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();

Thông 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 62 trở lên
chrome.webviewTag.setAudioMuted(
  mute: boolean,
)
: void

Đặt trạng thái tắt tiếng âm thanh của chế độ xem web.

Thông số

  • tắt tiếng

    boolean

    Giá trị tắt tiếng

setSpatialNavigationEnabled()

Chrome 71 trở lên
chrome.webviewTag.setSpatialNavigationEnabled(
  enabled: boolean,
)
: void

Đặt trạng thái điều hướng không gian của webview.

Thông số

  • đang bật

    boolean

    Giá trị trạng thái điều hướng bằng không gian.

setUserAgentOverride()

chrome.webviewTag.setUserAgentOverride(
  userAgent: string,
)
: void

Ghi đè chuỗi tác nhân người dùng mà webview sử dụng cho các yêu cầu trang khách. Việc ghi đè sẽ khiến các giá trị tiêu đề Gợi ý cho ứ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 trang khách mà chế độ ghi đè này được áp dụng.

Thông số

  • userAgent

    chuỗi

    Chuỗi tác nhân người dùng cần sử dụng.

setZoom()

chrome.webviewTag.setZoom(
  zoomFactor: number,
  callback?: function,
)
: void

Thay đổi hệ số thu phóng của trang. Phạm vi và độ bền của thay đổi này được xác định bằng chế độ thu phóng hiện tại của webview (xem webviewTag.ZoomMode).

Thông số

  • zoomFactor

    số

    Hệ số thu phóng mới.

  • callback

    hàm không bắt buộc

    Tham số callback có dạng như sau:

    () => void

setZoomMode()

Chrome 43 trở lên
chrome.webviewTag.setZoomMode(
  ZoomMode: ZoomMode,
  callback?: function,
)
: void

Đặt chế độ thu phóng của webview.

Thông số

  • ZoomMode

    Xác định cách xử lý thao tác thu phóng trong webview.

  • callback

    hàm không bắt buộc

    Tham số callback có dạng như sau:

    () => void

stop()

chrome.webviewTag.stop(): void

Dừng tải chỉ đường webview hiện tại nếu đang diễn ra.

stopFinding()

chrome.webviewTag.stopFinding(
  action?: StopFindingAction,
)
: void

Kết thúc phiên tìm kiếm hiện tại (xoá tất cả nội dung đánh dấu) và huỷ tất cả các yêu cầu tìm kiếm đang được xử lý.

Thông số

  • hành động

    StopFindingAction 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 làm nổi bật trên kết quả trùng khớp đang hoạt động; keep sẽ giữ phần làm nổi bật kết quả trùng khớp đang hoạt động; activate sẽ giữ phần làm nổi bật kết quả trùng khớp đang hoạt động và mô phỏng lượt nhấp của người dùng vào kết quả trùng khớp đó. Thao tác mặc định là keep.

terminate()

chrome.webviewTag.terminate(): void

Buộc tắt quy trình kết xuất của trang web khách. Điều 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 dùng chung một quy trình, nhưng sẽ không ảnh hưởng đến 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.

Đoạn mã ví dụ sau đây điều hướng webview đến about:blank khi khách tìm cách đóng chính nó.

webview.addEventListener('close', function() {
  webview.src = 'about:blank';
});

Thông số

  • callback

    hàm

    Tham số callback 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 một thông báo trên bảng điều khiển.

Đoạn mã ví dụ sau đây chuyển tiếp tất cả thông báo nhật ký đến bảng điều khiển của chương trình nhúng mà không cần quan tâm đế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);
});

Thông số

  • callback

    hàm

    Tham số callback có dạng như sau:

    (level: number, message: string, line: number, sourceId: string) => void

    • cấp lần truy cập,

      số

    • tin nhắn

      chuỗi

    • dòng

      số

    • sourceId

      chuỗi

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 một tài liệu mới được tải. Chỉ số này không bao gồm thao tác điều hướng trang trong tài liệu hiện tại hoặc tải tài nguyên không đồng bộ.

Đoạn mã ví dụ sau đây sửa đổi kích thước phông chữ mặc định của phần tử body của khách sau khi trang tải:

webview.addEventListener('contentload', function() {
  webview.executeScript({ code: 'document.body.style.fontSize = "42px"' });
});

Thông số

  • callback

    hàm

    Tham số callback 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ở một hộp thoại phương thức thông qua window.alert, window.confirm hoặc window.prompt.

Việc xử lý sự kiện này sẽ chặn quy trình khách cho đến khi mỗi trình nghe sự kiện trả về hoặc đối tượng dialog không thể truy cập được (nếu preventDefault() được gọi).

Hành vi mặc định là huỷ hộp thoại.

Thông số

exit

chrome.webviewTag.exit.addListener(
  callback: function,
)

Được kích hoạt khi quy trình hiển thị nội dung web của khách đã thoát.

Đoạn mã ví dụ sau đây sẽ cho thấy một 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!';
  }
});

Thông số

  • callback

    hàm

    Tham số callback có dạng như sau:

    (details: object) => void

    • chi tiết

      đối tượng

      • processID

        số

        Mã nhận dạng nội bộ của Chrome cho quy trình đã thoát.

      • lý do

        Chuỗi cho biết lý do thoát.

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 kiếm đang hoạt động. Điều này có thể xảy ra nhiều lần đối với một yêu cầu tìm kiếm duy nhất khi tìm thấy các kết quả trùng khớp.

Thông số

  • callback

    hàm

    Tham số callback có dạng như sau:

    (searchText: string, numberOfMatches: number, activeMatchOrdinal: number, selectionRect: SelectionRect, canceled: boolean, finalUpdate: string) => void

    • searchText

      chuỗi

    • numberOfMatches

      số

    • activeMatchOrdinal

      số

    • selectionRect
    • đã huỷ

      boolean

    • finalUpdate

      chuỗi

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ỷ mà không được xác nhận. Thông báo lỗi sẽ được in ra bảng điều khiển, trừ phi sự kiện được ngăn chặn theo mặc định.

Lưu ý: Khi quá trình tải tài nguyên bị huỷ, sự kiện loadabort sẽ được theo sau bởi sự kiện loadstop, ngay cả khi tất cả các lượt tải đã cam kết kể từ sự kiện loadstop gần đây nhất (nếu có) đều bị huỷ.

Lưu ý: Khi quá trình tải một URL about hoặc URL JavaScript bị huỷ, loadabort sẽ được kích hoạt rồi webview sẽ chuyển đến "about:blank".

Thông số

  • callback

    hàm

    Tham số callback có dạng như sau:

    (url: string, isTopLevel: boolean, code: number, reason: LoadAbortReason) => void

loadcommit

chrome.webviewTag.loadcommit.addListener(
  callback: function,
)

Được kích hoạt khi một lượt tải đã hoàn tất. Điều này bao gồm cả hoạt động điều hướng trong tài liệu hiện tại cũng như các lượt tải ở cấp tài liệu của khung phụ, nhưng không bao gồm các lượt tải tài nguyên không đồng bộ.

Thông số

  • callback

    hàm

    Tham số callback có dạng như sau:

    (url: string, isTopLevel: boolean) => void

    • url

      chuỗi

    • isTopLevel

      boolean

loadredirect

chrome.webviewTag.loadredirect.addListener(
  callback: function,
)

Được kích hoạt khi một yêu cầu tải cấp cao nhất đã chuyển hướng đến một URL khác.

Thông số

  • callback

    hàm

    Tham số callback có dạng như sau:

    (oldUrl: string, newUrl: string, isTopLevel: boolean) => void

    • oldUrl

      chuỗi

    • newUrl

      chuỗi

    • isTopLevel

      boolean

loadstart

chrome.webviewTag.loadstart.addListener(
  callback: function,
)

Được kích hoạt khi quá trình tải bắt đầu.

Thông số

  • callback

    hàm

    Tham số callback có dạng như sau:

    (url: string, isTopLevel: boolean) => void

    • url

      chuỗi

    • isTopLevel

      boolean

loadstop

chrome.webviewTag.loadstop.addListener(
  callback: function,
)

Được kích hoạt khi tất cả các lượt tải ở cấp khung trong một trang khách (bao gồm cả tất cả các khung phụ của trang đó) đã hoàn tất. Điều này bao gồm cả hoạt động điều hướng trong tài liệu hiện tại cũng như các lượt tải ở cấp tài liệu của khung phụ, nhưng không bao gồm các lượt tải tài nguyên không đồng bộ. Sự kiện này kích hoạt mỗi khi số lượt tải ở cấp tài liệu chuyển từ một (hoặc nhiều) thành không. Ví dụ: nếu một trang đã tải xong (tức là loadstop đã kích hoạt một lần) sẽ tạo một iframe mới tải một trang, sau đó loadstop thứ hai sẽ kích hoạt khi quá trình tải trang iframe hoàn tất. Mô hình này thường thấy trên những trang tải quảng cáo.

Lưu ý: Khi một tải đã xác nhận bị huỷ, sự kiện loadstop cuối cùng sẽ theo sau sự kiện loadabort, ngay cả khi tất cả các tải đã xác nhận kể từ sự kiện loadstop gần đây nhất (nếu có) đều bị huỷ.

Thông số

  • callback

    hàm

    Tham số callback có dạng như sau:

    () => void

newwindow

chrome.webviewTag.newwindow.addListener(
  callback: function,
)

Sự kiện này xảy ra khi trang khách cố gắng mở một cửa sổ trình duyệt mới.

Đoạn 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);
});

Thông số

  • callback

    hàm

    Tham số callback có dạng như sau:

    (window: NewWindow, targetUrl: string, initialWidth: number, initialHeight: number, name: string, windowOpenDisposition: WindowOpenDisposition) => void

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ừ ứng dụng nhúng.

Đoạn 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 sử dụng mã ví dụ này phải tự chỉ định quyền kê khai audioCapture và/hoặc videoCapture:

webview.addEventListener('permissionrequest', function(e) {
  if (e.permission === 'media') {
    e.request.allow();
  }
});

Thông số

  • callback

    hàm

    Tham số callback có dạng như sau:

    (permission: PermissionType, request: object) => void

responsive

chrome.webviewTag.responsive.addListener(
  callback: function,
)

Sự kiện này xảy ra khi quy trình kết xuất nội dung web của khách đã phản hồi trở lại sau khi không phản hồi.

Đoạn mã ví dụ sau đây sẽ làm mờ phần tử webview khi phần tử này trở nên 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';
});

Thông số

  • callback

    hàm

    Tham số callback có dạng như sau:

    (processID: number) => void

    • processID

      số

sizechanged

chrome.webviewTag.sizechanged.addListener(
  callback: function,
)

Sự kiện này xảy ra khi nội dung web được nhúng đã được đổi kích thước thông qua autosize. Chỉ kích hoạt nếu bạn bật autosize.

Thông số

  • callback

    hàm

    Tham số callback có dạng như sau:

    (oldWidth: number, oldHeight: number, newWidth: number, newHeight: number) => void

    • oldWidth

      số

    • oldHeight

      số

    • newWidth

      số

    • newHeight

      số

unresponsive

chrome.webviewTag.unresponsive.addListener(
  callback: function,
)

Được kích hoạt khi quy trình kết xuất nội dung web của khách không phản hồi. Sự kiện này sẽ được tạo một lần cùng với một sự kiện phản hồi phù hợp nếu khách bắt đầu phản hồi lại.

Thông số

  • callback

    hàm

    Tham số callback có dạng như sau:

    (processID: number) => void

    • processID

      số

zoomchange

chrome.webviewTag.zoomchange.addListener(
  callback: function,
)

Sự kiện này xảy ra khi mức thu phóng của trang thay đổi.

Thông số

  • callback

    hàm

    Tham số callback có dạng như sau:

    (oldZoomFactor: number, newZoomFactor: number) => void

    • oldZoomFactor

      số

    • newZoomFactor

      số