chrome.webNavigation

Mô tả

Sử dụng API chrome.webNavigation để nhận thông báo về trạng thái của các yêu cầu điều hướng đang diễn ra.

Quyền

webNavigation

Tệp kê khai

Tất cả phương thức và sự kiện chrome.webNavigation đều yêu cầu bạn khai báo "webNavigation" quyền trong tệp kê khai tiện ích. Ví dụ:

{
  "name": "My extension",
  ...
  "permissions": [
    "webNavigation"
  ],
  ...
}

Thứ tự sự kiện

Để hoàn tất thành công một thao tác điều hướng, các sự kiện sẽ được kích hoạt theo thứ tự sau:

onBeforeNavigate -> onCommitted -> [onDOMContentLoaded] -> onCompleted

Mọi lỗi xảy ra trong quá trình này đều dẫn đến sự kiện onErrorOccurred. Đối với một ứng dụng cụ thể điều hướng, không có sự kiện nào khác được kích hoạt sau onErrorOccurred.

Nếu một khung điều hướng chứa các khung phụ, onCommitted của khung đó sẽ được kích hoạt trước bất kỳ khung con nào onBeforeNavigate; trong khi onCompleted được kích hoạt sau tất cả onCompleted của con.

Nếu mảnh tham chiếu của một khung thay đổi, sự kiện onReferenceFragmentUpdated sẽ được kích hoạt. Chiến dịch này sự kiện có thể kích hoạt bất cứ lúc nào sau onDOMContentLoaded, ngay cả sau onCompleted.

Nếu dùng API nhật ký để sửa đổi trạng thái của một khung hình (ví dụ: sử dụng history.pushState(), Sự kiện onHistoryStateUpdated được kích hoạt. Sự kiện này có thể kích hoạt bất cứ lúc nào sau ngày onDOMContentLoaded.

Nếu một thao tác điều hướng đã khôi phục một trang từ Bộ nhớ đệm cho thao tác tiến lên, thì sự kiện onDOMContentLoaded sẽ không kích hoạt. Sự kiện không được kích hoạt vì nội dung đã tải xong khi trang được truy cập lần đầu tiên.

Nếu một thao tác điều hướng được kích hoạt thông qua Chrome Instant hoặc Trang tức thì, thì được chuyển đổi thành thẻ hiện tại. Trong trường hợp đó, sự kiện onTabReplaced sẽ được kích hoạt.

Liên quan đến các sự kiện webRequest

Không có thứ tự được xác định giữa các sự kiện của webRequest API và các sự kiện của webNavigation API. Có thể các sự kiện webRequest vẫn được nhận cho các khung hình đã đã bắt đầu một thao tác điều hướng mới hoặc một thao tác chỉ tiếp tục sau khi tài nguyên mạng đã đã được tải đầy đủ.

Nói chung, các sự kiện WebNavigation có liên quan chặt chẽ đến trạng thái điều hướng được hiển thị trong giao diện người dùng, trong khi các sự kiện webRequest tương ứng với trạng thái của ngăn xếp mạng là thường không rõ ràng đối với người dùng.

Mã thẻ

Không phải tất cả các thẻ điều hướng đều tương ứng với các thẻ thực tế trong giao diện người dùng của Chrome, ví dụ: một thẻ đang được được kết xuất trước. Bạn không thể truy cập các thẻ như vậy qua API thẻ và cũng không thể yêu cầu thông tin về họ qua webNavigation.getFrame hoặc webNavigation.getAllFrames. Sau khi một thẻ như vậy được hoán đổi ở, một sự kiện onTabReplaced sẽ được kích hoạt và bạn có thể truy cập vào các sự kiện đó qua các API này.

Dấu thời gian

Điều quan trọng cần lưu ý là một số điểm lạ về kỹ thuật trong việc hệ điều hành xử lý Chrome riêng biệt có thể khiến đồng hồ bị sai lệch giữa chính trình duyệt và các tiến trình tiện ích. Đó có nghĩa là sự kiện của WebNavigation Thuộc tính timeStamp chỉ được đảm bảo trong nội bộ nhất quán. So sánh một sự kiện với một sự kiện khác sẽ cung cấp cho bạn độ lệch chính xác giữa các sự kiện đó, nhưng so sánh chúng với thời gian hiện tại trong tiện ích (ví dụ: qua (new Date()).getTime()) có thể cho ra kết quả không mong muốn.

Mã khung

Khung trong một thẻ có thể được xác định bằng mã nhận dạng khung. ID khung của khung chính luôn bằng 0, Mã của khung con là một số dương. Sau khi tài liệu được tạo trong một khung, mã nhận dạng khung của tài liệu đó không đổi trong suốt vòng đời của tài liệu. Kể từ Chrome 49, mã nhận dạng này cũng không đổi đối với thời gian tồn tại của khung (trên nhiều điều hướng).

Do tính chất đa tiến trình của Chrome, một thẻ có thể sử dụng nhiều quy trình để hiển thị nguồn và đích đến của trang web. Do đó, nếu việc điều hướng diễn ra trong một quy trình mới, bạn có thể nhận các sự kiện cả từ trang mới và trang cũ cho đến khi điều hướng mới được thực hiện (tức là Đã gửi sự kiện onCommitted cho khung chính mới). Nói cách khác, bạn có thể có thêm nhiều trình tự sự kiện webNavigation đang chờ xử lý có cùng frameId. Các trình tự có thể là được phân biệt bằng phím processId.

Ngoài ra, xin lưu ý rằng trong khi tải tạm thời, quy trình này có thể được chuyển đổi nhiều lần. Điều này xảy ra khi nội dung tải được chuyển hướng đến một trang web khác. Trong trường hợp này, bạn sẽ nhận được Sự kiện onBeforeNavigateonErrorOccurred cho đến khi bạn nhận được sự kiện onCommitted cuối cùng.

Một khái niệm khác gây rắc rối với tiện ích là vòng đời của khung. Khung lưu trữ một tài liệu (được liên kết với một URL đã cam kết). Tài liệu có thể thay đổi (giả sử bằng cách điều hướng) nhưng frameId thì không, vì vậy tài liệu rất khó để liên tưởng một điều gì đó đã xảy ra trong một tài liệu cụ thể với chỉ frameIds. Chúng tôi sẽ ra mắt khái niệm về documentId là giá trị nhận dạng duy nhất cho mỗi tài liệu. Nếu một khung được điều hướng và mở một tài liệu mới mà giá trị nhận dạng sẽ thay đổi. Trường này hữu ích khi xác định khi các trang thay đổi trạng thái vòng đời (giữa quá trình kết xuất trước/đang hoạt động/được lưu vào bộ nhớ đệm) vì nó không có gì thay đổi.

Loại chuyển đổi và bộ hạn định

Sự kiện onCommitted của API webNavigation có một transitionType và một transitionQualifiers thuộc tính này. Loại chuyển đổi cũng giống như được sử dụng trong API lịch sử mô tả cách trình duyệt đã điều hướng đến URL cụ thể này. Ngoài ra, một số bộ hạn định chuyển đổi có thể trả về để xác định thêm điều hướng.

Những bộ hạn định chuyển đổi sau đây tồn tại:

Bộ hạn định chuyển đổiMô tả
"client_redirect [chuyển_hướng_khách_hàng]"Một hoặc nhiều lượt chuyển hướng do JavaScript hoặc thẻ làm mới meta trên trang gây ra đã xảy ra trong quá trình điều hướng.
"server_redirect" (chuyển hướng máy chủ)Một hoặc nhiều lệnh chuyển hướng do tiêu đề HTTP gửi từ máy chủ đã xảy ra trong quá trình điều hướng.
"same_back"Người dùng đã sử dụng nút Tiến hoặc Quay lại để bắt đầu điều hướng.
"from_address_bar"Người dùng đã bắt đầu điều hướng từ thanh địa chỉ (còn gọi là Thanh địa chỉ).

Ví dụ

Để dùng thử API này, hãy cài đặt ví dụ về API webNavigation trong chrome-extension-samples kho lưu trữ.

Loại

TransitionQualifier

Chrome 44 trở lên

Enum

"client_redirect"

"server_redirect"

"progress_back"

"from_address_bar"

TransitionType

Chrome 44 trở lên

Nguyên nhân của quá trình điều hướng. Các loại chuyển đổi tương tự như đã xác định trong API lịch sử sẽ được sử dụng. Đây là các loại chuyển đổi tương tự như đã xác định trong API lịch sử, ngoại trừ với "start_page" thay cho "auto_toplevel" (để có khả năng tương thích ngược).

Enum

"link"

"typed"

"auto_bookmark"

"auto_subframe"

"manual_subframe"

"đã tạo"

"start_page"

"form_submit"

"tải lại"

"từ khoá"

"keyword_generated"

Phương thức

getAllFrames()

Lời hứa
chrome.webNavigation.getAllFrames(
  details: object,
  callback?: function,
)

Truy xuất thông tin về tất cả các khung của một thẻ nhất định.

Tham số

  • chi tiết

    đối tượng

    Thông tin về thẻ để truy xuất tất cả khung hình.

    • tabId

      số

      Mã nhận dạng của thẻ.

  • số gọi lại

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

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

    (details?: object[]) => void

    • chi tiết

      đối tượng[] không bắt buộc

      Danh sách khung trong một thẻ đã cho, rỗng nếu mã thẻ được chỉ định không hợp lệ.

      • documentId

        string

        Chrome 106 trở lên

        Đã tải một mã nhận dạng duy nhất (UUID) của tài liệu.

      • documentLifecycle
        Chrome 106 trở lên

        Vòng đời của tài liệu.

      • errorOccurred

        boolean

        Đúng nếu lần điều hướng cuối cùng trong khung này bị gián đoạn do lỗi, tức là sự kiện onErrorErrorsred được kích hoạt.

      • frameId

        số

        Mã nhận dạng của khung. 0 cho biết đây là khung chính; một giá trị dương cho biết mã nhận dạng của khung phụ.

      • frameType
        Chrome 106 trở lên

        Loại khung có thao tác điều hướng.

      • parentDocumentId

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

        Chrome 106 trở lên

        Mã nhận dạng duy nhất (UUID) của tài liệu gốc sở hữu khung này. Giá trị này không được thiết lập nếu không có cha mẹ.

      • parentFrameId

        số

        Mã nhận dạng của khung chính hoặc -1 nếu đây là khung chính.

      • processId

        số

        Mã nhận dạng quy trình chạy trình kết xuất cho khung này.

      • url

        string

        URL hiện được liên kết với khung này.

Giá trị trả về

  • Promise<object[] | không xác định>

    Chrome 93 trở lên

    Lời hứa chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại.

getFrame()

Lời hứa
chrome.webNavigation.getFrame(
  details: object,
  callback?: function,
)

Truy xuất thông tin về khung đã cho. Khung tham chiếu đến <iframe> hoặc <frame> của trang web và được xác định bằng mã thẻ và mã khung.

Tham số

  • chi tiết

    đối tượng

    Thông tin về khung cần truy xuất thông tin.

    • documentId

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

      Chrome 106 trở lên

      Mã nhận dạng duy nhất (UUID) của tài liệu. Nếu frameId và/hoặc tabId được cung cấp, chúng tôi sẽ xác thực chúng để khớp với tài liệu do mã tài liệu được cung cấp.

    • frameId

      số không bắt buộc

      Mã nhận dạng của khung trong thẻ đã cho.

    • processId

      số không bắt buộc

      Không dùng nữa kể từ Chrome 49

      Khung giờ đây được xác định duy nhất bằng ID thẻ và ID khung; mã quy trình không còn cần thiết nữa nên bị bỏ qua.

      Mã quy trình chạy trình kết xuất cho thẻ này.

    • tabId

      số không bắt buộc

      Mã nhận dạng của thẻ chứa khung đó.

  • số gọi lại

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

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

    (details?: object) => void

    • chi tiết

      đối tượng không bắt buộc

      Thông tin về khung được yêu cầu, rỗng nếu ID khung và/hoặc ID thẻ được chỉ định không hợp lệ.

      • documentId

        string

        Chrome 106 trở lên

        Đã tải một mã nhận dạng duy nhất (UUID) của tài liệu.

      • documentLifecycle
        Chrome 106 trở lên

        Vòng đời của tài liệu.

      • errorOccurred

        boolean

        Đúng nếu lần điều hướng cuối cùng trong khung này bị gián đoạn do lỗi, tức là sự kiện onErrorErrorsred được kích hoạt.

      • frameType
        Chrome 106 trở lên

        Loại khung có thao tác điều hướng.

      • parentDocumentId

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

        Chrome 106 trở lên

        Mã nhận dạng duy nhất (UUID) của tài liệu gốc sở hữu khung này. Giá trị này không được thiết lập nếu không có cha mẹ.

      • parentFrameId

        số

        Mã nhận dạng của khung chính hoặc -1 nếu đây là khung chính.

      • url

        string

        URL hiện được liên kết với khung này, nếu khung được xác định bằng frameId tồn tại tại một thời điểm trong thẻ đã cho. Việc một URL được liên kết với một frameId nhất định không có nghĩa là khung tương ứng đó vẫn tồn tại.

Giá trị trả về

  • Promise&lt;object | không xác định>

    Chrome 93 trở lên

    Lời hứa chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại.

Sự kiện

onBeforeNavigate

chrome.webNavigation.onBeforeNavigate.addListener(
  callback: function,
  filters?: object,
)

Được kích hoạt khi điều hướng sắp diễn ra.

Tham số

  • số gọi lại

    hàm

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

    (details: object) => void

    • chi tiết

      đối tượng

      • Chrome 106 trở lên

        Vòng đời của tài liệu.

      • frameId

        số

        0 cho biết hoạt động điều hướng diễn ra trong cửa sổ nội dung thẻ; giá trị dương cho biết thao tác điều hướng trong khung phụ. Mã khung là duy nhất cho một thẻ và quy trình cụ thể.

      • Chrome 106 trở lên

        Loại khung có thao tác điều hướng.

      • parentDocumentId

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

        Chrome 106 trở lên

        Mã nhận dạng duy nhất (UUID) của tài liệu gốc sở hữu khung này. Giá trị này không được thiết lập nếu không có cha mẹ.

      • parentFrameId

        số

        Mã nhận dạng của khung chính hoặc -1 nếu đây là khung chính.

      • processId

        số

        Không được dùng nữa kể từ Chrome 50

        ProcessId không còn được đặt cho sự kiện này nữa vì quy trình sẽ hiển thị tài liệu kết quả sẽ không được xác định cho đến onCommit.

        Giá trị -1.

      • tabId

        số

        Mã của thẻ mà quá trình điều hướng sắp diễn ra.

      • timeStamp

        số

        Thời gian trình duyệt sắp bắt đầu điều hướng, tính bằng mili giây kể từ thời gian bắt đầu của hệ thống.

      • url

        string

  • bộ lọc

    đối tượng không bắt buộc

    • Các điều kiện mà URL được điều hướng phải đáp ứng. 'Lược đồ' và "ports" các trường của UrlFilter sẽ bị bỏ qua đối với sự kiện này.

onCommitted

chrome.webNavigation.onCommitted.addListener(
  callback: function,
  filters?: object,
)

Được kích hoạt khi thực hiện thao tác điều hướng. Tài liệu (và các tài nguyên mà tài liệu đó tham chiếu, chẳng hạn như hình ảnh và khung phụ) có thể vẫn đang được tải xuống, nhưng ít nhất một phần của tài liệu đã được nhận từ máy chủ và trình duyệt đã quyết định chuyển sang tài liệu mới.

Tham số

  • số gọi lại

    hàm

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

    (details: object) => void

    • chi tiết

      đối tượng

      • documentId

        string

        Chrome 106 trở lên

        Đã tải một mã nhận dạng duy nhất (UUID) của tài liệu.

      • Chrome 106 trở lên

        Vòng đời của tài liệu.

      • frameId

        số

        0 cho biết hoạt động điều hướng diễn ra trong cửa sổ nội dung thẻ; giá trị dương cho biết thao tác điều hướng trong một khung phụ. Mã khung là duy nhất trong một thẻ.

      • Chrome 106 trở lên

        Loại khung có thao tác điều hướng.

      • parentDocumentId

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

        Chrome 106 trở lên

        Mã nhận dạng duy nhất (UUID) của tài liệu gốc sở hữu khung này. Giá trị này không được thiết lập nếu không có cha mẹ.

      • parentFrameId

        số

        Chrome 74 trở lên

        Mã nhận dạng của khung chính hoặc -1 nếu đây là khung chính.

      • processId

        số

        Mã nhận dạng quy trình chạy trình kết xuất cho khung này.

      • tabId

        số

        Mã của thẻ mà hoạt động điều hướng diễn ra.

      • timeStamp

        số

        Khoảng thời gian mà thao tác điều hướng được cam kết, tính bằng mili giây kể từ thời gian bắt đầu của hệ thống.

      • transitionQualifiers

        Danh sách các bộ hạn định chuyển đổi.

      • transitionType

        Nguyên nhân của quá trình điều hướng.

      • url

        string

  • bộ lọc

    đối tượng không bắt buộc

    • Các điều kiện mà URL được điều hướng phải đáp ứng. 'Lược đồ' và "ports" các trường của UrlFilter sẽ bị bỏ qua đối với sự kiện này.

onCompleted

chrome.webNavigation.onCompleted.addListener(
  callback: function,
  filters?: object,
)

Được kích hoạt khi tài liệu, bao gồm cả tài nguyên mà tài liệu đó tham chiếu đến, được tải và khởi chạy hoàn toàn.

Tham số

  • số gọi lại

    hàm

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

    (details: object) => void

    • chi tiết

      đối tượng

      • documentId

        string

        Chrome 106 trở lên

        Đã tải một mã nhận dạng duy nhất (UUID) của tài liệu.

      • Chrome 106 trở lên

        Vòng đời của tài liệu.

      • frameId

        số

        0 cho biết hoạt động điều hướng diễn ra trong cửa sổ nội dung thẻ; giá trị dương cho biết thao tác điều hướng trong một khung phụ. Mã khung là duy nhất trong một thẻ.

      • Chrome 106 trở lên

        Loại khung có thao tác điều hướng.

      • parentDocumentId

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

        Chrome 106 trở lên

        Mã nhận dạng duy nhất (UUID) của tài liệu gốc sở hữu khung này. Giá trị này không được thiết lập nếu không có cha mẹ.

      • parentFrameId

        số

        Chrome 74 trở lên

        Mã nhận dạng của khung chính hoặc -1 nếu đây là khung chính.

      • processId

        số

        Mã nhận dạng quy trình chạy trình kết xuất cho khung này.

      • tabId

        số

        Mã của thẻ mà hoạt động điều hướng diễn ra.

      • timeStamp

        số

        Thời gian khi tài liệu tải xong, tính bằng mili giây kể từ thời gian bắt đầu của hệ thống.

      • url

        string

  • bộ lọc

    đối tượng không bắt buộc

    • Các điều kiện mà URL được điều hướng phải đáp ứng. 'Lược đồ' và "ports" các trường của UrlFilter sẽ bị bỏ qua đối với sự kiện này.

onCreatedNavigationTarget

chrome.webNavigation.onCreatedNavigationTarget.addListener(
  callback: function,
  filters?: object,
)

Được kích hoạt khi một cửa sổ mới hoặc một thẻ mới trong cửa sổ hiện có được tạo để lưu trữ thao tác điều hướng.

Tham số

  • số gọi lại

    hàm

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

    (details: object) => void

    • chi tiết

      đối tượng

      • sourceFrameId

        số

        Mã của khung có sourceTabId mà hoạt động điều hướng được kích hoạt. 0 biểu thị khung chính.

      • sourceProcessId

        số

        Mã nhận dạng của quy trình chạy trình kết xuất cho khung nguồn.

      • sourceTabId

        số

        Mã của thẻ mà thao tác điều hướng được kích hoạt.

      • tabId

        số

        Mã của thẻ mà URL được mở

      • timeStamp

        số

        Khoảng thời gian trình duyệt sắp tạo chế độ xem mới, tính bằng mili giây kể từ thời gian bắt đầu của hệ thống.

      • url

        string

        URL sẽ được mở trong cửa sổ mới.

  • bộ lọc

    đối tượng không bắt buộc

    • Các điều kiện mà URL được điều hướng phải đáp ứng. 'lược đồ' và "ports" các trường của UrlFilter sẽ bị bỏ qua đối với sự kiện này.

onDOMContentLoaded

chrome.webNavigation.onDOMContentLoaded.addListener(
  callback: function,
  filters?: object,
)

Được kích hoạt khi DOM của trang được xây dựng hoàn chỉnh, nhưng các tài nguyên được tham chiếu có thể không tải xong.

Tham số

  • số gọi lại

    hàm

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

    (details: object) => void

    • chi tiết

      đối tượng

      • documentId

        string

        Chrome 106 trở lên

        Đã tải một mã nhận dạng duy nhất (UUID) của tài liệu.

      • Chrome 106 trở lên

        Vòng đời của tài liệu.

      • frameId

        số

        0 cho biết hoạt động điều hướng diễn ra trong cửa sổ nội dung thẻ; giá trị dương cho biết thao tác điều hướng trong một khung phụ. Mã khung là duy nhất trong một thẻ.

      • Chrome 106 trở lên

        Loại khung có thao tác điều hướng.

      • parentDocumentId

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

        Chrome 106 trở lên

        Mã nhận dạng duy nhất (UUID) của tài liệu gốc sở hữu khung này. Giá trị này không được thiết lập nếu không có cha mẹ.

      • parentFrameId

        số

        Chrome 74 trở lên

        Mã nhận dạng của khung chính hoặc -1 nếu đây là khung chính.

      • processId

        số

        Mã nhận dạng quy trình chạy trình kết xuất cho khung này.

      • tabId

        số

        Mã của thẻ mà hoạt động điều hướng diễn ra.

      • timeStamp

        số

        Khoảng thời gian DOM của trang được tạo hoàn chỉnh, tính bằng mili giây kể từ thời gian bắt đầu của hệ thống.

      • url

        string

  • bộ lọc

    đối tượng không bắt buộc

    • Các điều kiện mà URL được điều hướng phải đáp ứng. 'Lược đồ' và "ports" các trường của UrlFilter sẽ bị bỏ qua đối với sự kiện này.

onErrorOccurred

chrome.webNavigation.onErrorOccurred.addListener(
  callback: function,
  filters?: object,
)

Được kích hoạt khi xảy ra lỗi và quá trình điều hướng bị huỷ bỏ. Điều này có thể xảy ra nếu xảy ra lỗi mạng hoặc người dùng huỷ thao tác.

Tham số

  • số gọi lại

    hàm

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

    (details: object) => void

    • chi tiết

      đối tượng

      • documentId

        string

        Chrome 106 trở lên

        Đã tải một mã nhận dạng duy nhất (UUID) của tài liệu.

      • Chrome 106 trở lên

        Vòng đời của tài liệu.

      • error

        string

        Nội dung mô tả về lỗi.

      • frameId

        số

        0 cho biết hoạt động điều hướng diễn ra trong cửa sổ nội dung thẻ; giá trị dương cho biết thao tác điều hướng trong một khung phụ. Mã khung là duy nhất trong một thẻ.

      • Chrome 106 trở lên

        Loại khung có thao tác điều hướng.

      • parentDocumentId

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

        Chrome 106 trở lên

        Mã nhận dạng duy nhất (UUID) của tài liệu gốc sở hữu khung này. Giá trị này không được thiết lập nếu không có cha mẹ.

      • parentFrameId

        số

        Chrome 74 trở lên

        Mã nhận dạng của khung chính hoặc -1 nếu đây là khung chính.

      • processId

        số

        Không được dùng nữa kể từ Chrome 50

        ProcessId không còn được đặt cho sự kiện này nữa.

        Giá trị -1.

      • tabId

        số

        Mã của thẻ mà hoạt động điều hướng diễn ra.

      • timeStamp

        số

        Thời gian xảy ra lỗi, tính bằng mili giây kể từ thời gian bắt đầu của hệ thống.

      • url

        string

  • bộ lọc

    đối tượng không bắt buộc

    • Các điều kiện mà URL được điều hướng phải đáp ứng. 'Lược đồ' và "ports" các trường của UrlFilter sẽ bị bỏ qua đối với sự kiện này.

onHistoryStateUpdated

chrome.webNavigation.onHistoryStateUpdated.addListener(
  callback: function,
  filters?: object,
)

Được kích hoạt khi nhật ký của khung được cập nhật thành một URL mới. Tất cả sự kiện trong tương lai cho khung đó sẽ sử dụng URL đã cập nhật.

Tham số

  • số gọi lại

    hàm

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

    (details: object) => void

    • chi tiết

      đối tượng

      • documentId

        string

        Chrome 106 trở lên

        Đã tải một mã nhận dạng duy nhất (UUID) của tài liệu.

      • Chrome 106 trở lên

        Vòng đời của tài liệu.

      • frameId

        số

        0 cho biết hoạt động điều hướng diễn ra trong cửa sổ nội dung thẻ; giá trị dương cho biết thao tác điều hướng trong một khung phụ. Mã khung là duy nhất trong một thẻ.

      • Chrome 106 trở lên

        Loại khung có thao tác điều hướng.

      • parentDocumentId

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

        Chrome 106 trở lên

        Mã nhận dạng duy nhất (UUID) của tài liệu gốc sở hữu khung này. Giá trị này không được thiết lập nếu không có cha mẹ.

      • parentFrameId

        số

        Chrome 74 trở lên

        Mã nhận dạng của khung chính hoặc -1 nếu đây là khung chính.

      • processId

        số

        Mã nhận dạng quy trình chạy trình kết xuất cho khung này.

      • tabId

        số

        Mã của thẻ mà hoạt động điều hướng diễn ra.

      • timeStamp

        số

        Khoảng thời gian mà thao tác điều hướng được cam kết, tính bằng mili giây kể từ thời gian bắt đầu của hệ thống.

      • transitionQualifiers

        Danh sách các bộ hạn định chuyển đổi.

      • transitionType

        Nguyên nhân của quá trình điều hướng.

      • url

        string

  • bộ lọc

    đối tượng không bắt buộc

    • Các điều kiện mà URL được điều hướng phải đáp ứng. 'Lược đồ' và "ports" các trường của UrlFilter sẽ bị bỏ qua đối với sự kiện này.

onReferenceFragmentUpdated

chrome.webNavigation.onReferenceFragmentUpdated.addListener(
  callback: function,
  filters?: object,
)

Được kích hoạt khi mảnh tham chiếu của khung được cập nhật. Tất cả sự kiện trong tương lai cho khung đó sẽ sử dụng URL đã cập nhật.

Tham số

  • số gọi lại

    hàm

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

    (details: object) => void

    • chi tiết

      đối tượng

      • documentId

        string

        Chrome 106 trở lên

        Đã tải một mã nhận dạng duy nhất (UUID) của tài liệu.

      • Chrome 106 trở lên

        Vòng đời của tài liệu.

      • frameId

        số

        0 cho biết hoạt động điều hướng diễn ra trong cửa sổ nội dung thẻ; giá trị dương cho biết thao tác điều hướng trong một khung phụ. Mã khung là duy nhất trong một thẻ.

      • Chrome 106 trở lên

        Loại khung có thao tác điều hướng.

      • parentDocumentId

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

        Chrome 106 trở lên

        Mã nhận dạng duy nhất (UUID) của tài liệu gốc sở hữu khung này. Giá trị này không được thiết lập nếu không có cha mẹ.

      • parentFrameId

        số

        Chrome 74 trở lên

        Mã nhận dạng của khung chính hoặc -1 nếu đây là khung chính.

      • processId

        số

        Mã nhận dạng quy trình chạy trình kết xuất cho khung này.

      • tabId

        số

        Mã của thẻ mà hoạt động điều hướng diễn ra.

      • timeStamp

        số

        Khoảng thời gian mà thao tác điều hướng được cam kết, tính bằng mili giây kể từ thời gian bắt đầu của hệ thống.

      • transitionQualifiers

        Danh sách các bộ hạn định chuyển đổi.

      • transitionType

        Nguyên nhân của quá trình điều hướng.

      • url

        string

  • bộ lọc

    đối tượng không bắt buộc

    • Các điều kiện mà URL được điều hướng phải đáp ứng. 'lược đồ' và "ports" các trường của UrlFilter sẽ bị bỏ qua đối với sự kiện này.

onTabReplaced

chrome.webNavigation.onTabReplaced.addListener(
  callback: function,
)

Được kích hoạt khi nội dung của thẻ được thay thế bằng một thẻ khác (thường được kết xuất trước trước đó).

Tham số

  • số gọi lại

    hàm

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

    (details: object) => void

    • chi tiết

      đối tượng

      • replacedTabId

        số

        Mã của thẻ đã được thay thế.

      • tabId

        số

        Mã của thẻ đã thay thế thẻ cũ.

      • timeStamp

        số

        Thời gian thay thế, tính bằng mili giây kể từ thời gian bắt đầu của hệ thống.