chrome.webNavigation

Nội dung 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 chỉ đường đang diễn ra.

Quyền

webNavigation

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

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

Khái niệm và cách sử dụng

Thứ tự sự kiện

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

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

Bất kỳ lỗi nào xảy ra trong quá trình này đều dẫn đến sự kiện onErrorOccurred. Đối với một thao tác điều hướng cụ thể, sẽ 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ụ, thì onCommitted của khung đó sẽ được kích hoạt trước bất kỳ onBeforeNavigate của phần tử con nào; còn onCompleted được kích hoạt sau tất cả các onCompleted của phần tử con.

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

Nếu API nhật ký được dùng để sửa đổi trạng thái của một khung (ví dụ: sử dụng history.pushState(), thì sự kiện onHistoryStateUpdated sẽ đượ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 di chuyển đã khôi phục một trang từ Bộ nhớ đệm cho thao tác tiến/lùi, thì sự kiện onDOMContentLoaded sẽ không kích hoạt. Sự kiện này 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 di chuyển được kích hoạt bằng Chrome Instant hoặc Trang tức thì, thì trang được tải đầy đủ sẽ được hoá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 sự kiện webRequest

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

Nhìn chung, các sự kiện webNavigation liên quan chặt chẽ đến trạng thái điều hướng 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 thường không rõ ràng đối với người dùng.

Mã thẻ

Không phải thẻ điều hướng nào cũng tương ứng với các thẻ thực tế trong giao diện người dùng của Chrome, chẳng hạn như một thẻ đang được kết xuất trước. Bạn không thể truy cập vào các thẻ như vậy bằng API Thẻ, đồng thời bạn cũng không thể yêu cầu thông tin về các thẻ đó bằng cách gọi webNavigation.getFrame() hoặc webNavigation.getAllFrames(). Sau khi bạn hoán đổi một thẻ như vậy, 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 này thông 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 bất thường về mặt kỹ thuật trong cách hệ điều hành xử lý các quy trình Chrome riêng biệt có thể khiến đồng hồ bị lệch giữa chính trình duyệt và các quy trình tiện ích. Điều đó có nghĩa là thuộc tính timeStamp của thuộc tính timeStamp sự kiện WebNavigation chỉ được đảm bảo nhất quán nội bộ. Khi so sánh một sự kiện với một sự kiện khác, bạn sẽ nhận được kết quả chênh lệch chính xác giữa các sự kiện đó, nhưng việc so sánh với thời gian hiện tại trong tiện ích (ví dụ: sử dụng (new Date()).getTime()) có thể cho kết quả không mong muốn.

Mã nhận dạng khung

Bạn có thể xác định khung trong một thẻ bằng mã khung. Mã nhận dạng khung của khung chính luôn là 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 đó sẽ không đổi trong suốt thời gian hoạt động của tài liệu. Kể từ Chrome 49, mã nhận dạng này cũng không đổi trong suốt thời gian hoạt động của khung (trong nhiều thao tác đ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 các quy trình khác nhau để hiển thị nguồn và đích đến của trang web. Do đó, nếu quá trình điều hướng diễn ra trong một quy trình mới, bạn có thể nhận được các sự kiện từ cả trang mới và trang cũ cho đến khi điều hướng mới được xác nhận (tức là sự kiện onCommitted được gửi cho khung chính mới). Nói cách khác, có thể có nhiều hơn một trình tự sự kiện webNavigation đang chờ xử lý với cùng một frameId. Bạn có thể phân biệt các trình tự bằng khoá processId.

Ngoài ra, xin lưu ý rằng trong quá trình tải tạm thời, quá trình này có thể bị chuyển đổi nhiều lần. Điều này xảy ra khi lượt 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 các sự kiện onBeforeNavigateonErrorOccurred lặp lại cho đến khi nhận được sự kiện onCommitted cuối cùng.

Một khái niệm khác gặp vấn đề 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ì vậy, rất khó để liên kết việc đã xảy ra trong một tài liệu cụ thể chỉ với frameIds. Chúng tôi sẽ giới thiệu khái niệm về documentId. Đây là giá trị nhận dạng duy nhất trên 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, thì giá trị nhận dạng sẽ thay đổi. Trường này rất hữu ích cho việc xác định thời điểm các trang thay đổi trạng thái vòng đời (giữa kết xuất trước/đang hoạt động/lưu vào bộ nhớ đệm) vì trường này vẫn giữ nguyên.

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

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

Hiện có các bộ hạn định chuyển đổi sau:

Bộ hạn định chuyển đổiNội dung mô tả
"client_redirect"Một hoặc nhiều lượt chuyển hướng do JavaScript hoặc thẻ meta làm mới trên trang xảy ra trong khi điều hướng.
"server_redirect"Một hoặc nhiều lệnh chuyển hướng do tiêu đề HTTP gửi từ máy chủ gây ra đã xảy ra trong quá trình điều hướng.
"forward_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 kho lưu trữ chrome-extension-samples.

Loại

TransitionQualifier

Chrome 44 trở lên

Liệt kê

"client_redirect"

"server_redirect"

"forward_back"

"from_address_bar"

TransitionType

Chrome 44 trở lên

Nguyên nhân điều hướng. Các loại chuyển đổi tương tự như được xác định trong API nhật ký đều được sử dụng. Đây cũng là các loại chuyển đổi như được xác định trong API nhật ký, ngoại trừ "start_page" thay cho "auto_toplevel" (để tương thích ngược).

Liệt kê

"auto_subframe"

"manual_subframe"

"start_page"

"form_submit"

Phương thức

getAllFrames()

Cam kết
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ẻ dùng để truy xuất tất cả khung hình.

    • tabId

      number

      Mã 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 các khung trong thẻ nhất định, rỗng nếu mã thẻ được chỉ định không hợp lệ.

      • documentId

        string

        Chrome 106 trở lên

        Mã nhận dạng duy nhất (UUID) của tài liệu đã được tải.

      • documentLifecycle
        Chrome 106 trở lên

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

      • errorOccurred

        boolean

        Đúng nếu thao tác đ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 onErrorSự kiện đã kích hoạt.

      • frameId

        number

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

      • frameType
        Chrome 106 trở lên

        Loại khung mà điều hướng diễn ra.

      • 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 mẹ sở hữu khung này. Tuỳ chọn này không được đặt nếu không có cha mẹ.

      • parentFrameId

        number

        Mã của khung mẹ hoặc -1 nếu đây là khung chính.

      • processId

        number

        Mã của 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[]|undefined>

    Chrome 93 trở lên

    Lời hứa được hỗ trợ trong Manifest V3 trở lên nhưng lệnh gọi lại được cung cấp để có khả năng tương thích ngược. Bạn không thể sử dụng cả hai trong cùng một lệnh gọi hàm. Lời hứa sẽ được phân giải bằng cùng một loại được truyền đến lệnh gọi lại.

getFrame()

Cam kết
chrome.webNavigation.getFrame(
  details: object,
  callback?: function,
)

Truy xuất thông tin về khung đã cho. Khung đề cập đến <iframe> hoặc <frame> của một 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 được cung cấp mã khung và/hoặc mã tab, chúng sẽ được xác thực để khớp với tài liệu tìm thấy theo 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ẻ nhất định.

    • processId

      số không bắt buộc

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

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

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

    • tabId

      số không bắt buộc

      Mã 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 mã khung và/hoặc mã thẻ được chỉ định không hợp lệ.

      • documentId

        string

        Chrome 106 trở lên

        Mã nhận dạng duy nhất (UUID) của tài liệu đã được tải.

      • documentLifecycle
        Chrome 106 trở lên

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

      • errorOccurred

        boolean

        Đúng nếu thao tác đ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 onErrorSự kiện đã kích hoạt.

      • frameType
        Chrome 106 trở lên

        Loại khung mà điều hướng diễn ra.

      • 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 mẹ sở hữu khung này. Tuỳ chọn này không được đặt nếu không có cha mẹ.

      • parentFrameId

        number

        Mã của khung mẹ 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 điểm trong thẻ nhất định. Trên thực tế, URL được liên kết với một frameId nhất định không ngụ ý rằng khung tương ứng vẫn tồn tại.

Giá trị trả về

  • Promise<object|undefined>

    Chrome 93 trở lên

    Lời hứa được hỗ trợ trong Manifest V3 trở lên nhưng lệnh gọi lại được cung cấp để có khả năng tương thích ngược. Bạn không thể sử dụng cả hai trong cùng một lệnh gọi hàm. Lời hứa sẽ được phân giải bằng cùng một loại được truyền đến lệnh gọi lại.

Sự kiện

onBeforeNavigate

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

Được kích hoạt khi một quá trình điều hướng sắp xảy 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

        number

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

      • Chrome 106 trở lên

        Loại khung mà điều hướng diễn ra.

      • 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 mẹ sở hữu khung này. Tuỳ chọn này không được đặt nếu không có cha mẹ.

      • parentFrameId

        number

        Mã của khung mẹ hoặc -1 nếu đây là khung chính.

      • processId

        number

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

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

        Giá trị -1.

      • tabId

        number

        Mã của thẻ nơi thao tác điều hướng sắp xảy ra.

      • timeStamp

        number

        Thời gian khi trình duyệt sắp bắt đầu quy trình đ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. Các trường "lược đồ" và "cổng" của UrlFilter sẽ bị bỏ qua cho sự kiện này.

onCommitted

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

Được kích hoạt khi một thao tác điều hướng được cam kết. Tài liệu (và các tài nguyên được đề cập đế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

        Mã nhận dạng duy nhất (UUID) của tài liệu đã được tải.

      • Chrome 106 trở lên

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

      • frameId

        number

        0 cho biết quá trình điều hướng xảy ra trong cửa sổ nội dung thẻ; giá trị dương cho biết quá trình đ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 mà điều hướng diễn ra.

      • 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 mẹ sở hữu khung này. Tuỳ chọn này không được đặt nếu không có cha mẹ.

      • parentFrameId

        number

        Chrome 74 trở lên

        Mã của khung mẹ hoặc -1 nếu đây là khung chính.

      • processId

        number

        Mã của quy trình chạy trình kết xuất cho khung này.

      • tabId

        number

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

      • timeStamp

        number

        Thời gian xác nhận hoạt động điều hướng, 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 đ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. Các trường "lược đồ" và "cổng" của UrlFilter sẽ bị bỏ qua cho sự kiện này.

onCompleted

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

Được kích hoạt khi một tài liệu, bao gồm cả các tài nguyên 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

        Mã nhận dạng duy nhất (UUID) của tài liệu đã được tải.

      • Chrome 106 trở lên

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

      • frameId

        number

        0 cho biết quá trình điều hướng xảy ra trong cửa sổ nội dung thẻ; giá trị dương cho biết quá trình đ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 mà điều hướng diễn ra.

      • 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 mẹ sở hữu khung này. Tuỳ chọn này không được đặt nếu không có cha mẹ.

      • parentFrameId

        number

        Chrome 74 trở lên

        Mã của khung mẹ hoặc -1 nếu đây là khung chính.

      • processId

        number

        Mã của quy trình chạy trình kết xuất cho khung này.

      • tabId

        number

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

      • timeStamp

        number

        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. Các trường "lược đồ" và "cổng" của UrlFilter sẽ bị bỏ qua cho 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 thẻ mới trong cửa sổ hiện có được tạo để lưu trữ thành phần đ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

        number

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

      • sourceProcessId

        number

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

      • sourceTabId

        number

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

      • tabId

        number

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

      • timeStamp

        number

        Thời gian mà trình duyệt chuẩn bị tạo một 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. Các trường "lược đồ" và "cổng" của UrlFilter sẽ bị bỏ qua cho 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 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

        Mã nhận dạng duy nhất (UUID) của tài liệu đã được tải.

      • Chrome 106 trở lên

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

      • frameId

        number

        0 cho biết quá trình điều hướng xảy ra trong cửa sổ nội dung thẻ; giá trị dương cho biết quá trình đ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 mà điều hướng diễn ra.

      • 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 mẹ sở hữu khung này. Tuỳ chọn này không được đặt nếu không có cha mẹ.

      • parentFrameId

        number

        Chrome 74 trở lên

        Mã của khung mẹ hoặc -1 nếu đây là khung chính.

      • processId

        number

        Mã của quy trình chạy trình kết xuất cho khung này.

      • tabId

        number

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

      • timeStamp

        number

        Thời gian mà DOM của trang được tạo toàn bộ, 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. Các trường "lược đồ" và "cổng" của UrlFilter sẽ bị bỏ qua cho 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ỷ quá trình đ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

      • documentId

        string

        Chrome 106 trở lên

        Mã nhận dạng duy nhất (UUID) của tài liệu đã được tải.

      • Chrome 106 trở lên

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

      • error

        string

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

      • frameId

        number

        0 cho biết quá trình điều hướng xảy ra trong cửa sổ nội dung thẻ; giá trị dương cho biết quá trình đ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 mà điều hướng diễn ra.

      • 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 mẹ sở hữu khung này. Tuỳ chọn này không được đặt nếu không có cha mẹ.

      • parentFrameId

        number

        Chrome 74 trở lên

        Mã của khung mẹ hoặc -1 nếu đây là khung chính.

      • processId

        number

        Không 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

        number

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

      • timeStamp

        number

        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. Các trường "lược đồ" và "cổng" của UrlFilter sẽ bị bỏ qua cho 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ả cá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

        Mã nhận dạng duy nhất (UUID) của tài liệu đã được tải.

      • Chrome 106 trở lên

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

      • frameId

        number

        0 cho biết quá trình điều hướng xảy ra trong cửa sổ nội dung thẻ; giá trị dương cho biết quá trình đ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 mà điều hướng diễn ra.

      • 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 mẹ sở hữu khung này. Tuỳ chọn này không được đặt nếu không có cha mẹ.

      • parentFrameId

        number

        Chrome 74 trở lên

        Mã của khung mẹ hoặc -1 nếu đây là khung chính.

      • processId

        number

        Mã của quy trình chạy trình kết xuất cho khung này.

      • tabId

        number

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

      • timeStamp

        number

        Thời gian xác nhận hoạt động điều hướng, 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 đ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. Các trường "lược đồ" và "cổng" của UrlFilter sẽ bị bỏ qua cho 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 một khung được cập nhật. Tất cả cá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

        Mã nhận dạng duy nhất (UUID) của tài liệu đã được tải.

      • Chrome 106 trở lên

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

      • frameId

        number

        0 cho biết quá trình điều hướng xảy ra trong cửa sổ nội dung thẻ; giá trị dương cho biết quá trình đ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 mà điều hướng diễn ra.

      • 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 mẹ sở hữu khung này. Tuỳ chọn này không được đặt nếu không có cha mẹ.

      • parentFrameId

        number

        Chrome 74 trở lên

        Mã của khung mẹ hoặc -1 nếu đây là khung chính.

      • processId

        number

        Mã của quy trình chạy trình kết xuất cho khung này.

      • tabId

        number

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

      • timeStamp

        number

        Thời gian xác nhận hoạt động điều hướng, 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 đ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. Các trường "lược đồ" và "cổng" của UrlFilter sẽ bị bỏ qua cho 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 đó).

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

        number

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

      • tabId

        number

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

      • timeStamp

        number

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