PerformanceNavigationTiming: domInteractive property

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since October 2021.

Thuộc tính chỉ đọc domInteractive trả về một DOMHighResTimeStamp biểu thị thời điểm ngay trước khi tác nhân người dùng đặt readyState của tài liệu thành "interactive".

Note: Thuộc tính này không phải Time to interactive (TTI). Thuộc tính này nói về thời điểm hoàn tất việc xây dựng DOM và JavaScript có thể tương tác với nó. Xem thêm trạng thái interactive của Document.readyState, trạng thái này tương ứng với thuộc tính này.

Đo thời gian xử lý DOM có thể không đáng kể trừ khi trang của bạn có nguồn HTML rất lớn để dựng thành Document Object Model.

Nếu không có JavaScript chặn bộ phân tích thì sự kiện DOMContentLoaded (xem domContentLoadedEventStart để lấy dấu thời gian) sẽ kích hoạt ngay sau domInteractive.

Giá trị

Một DOMHighResTimeStamp biểu thị thời điểm ngay trước khi tác nhân người dùng đặt readyState của tài liệu thành "interactive".

Ví dụ

Ghi lại thời điểm tương tác với DOM

Thuộc tính domInteractive có thể được dùng để ghi lại thời điểm DOM xây dựng xong và có thể tương tác.

Ví dụ dùng PerformanceObserver...

js
const observer = new PerformanceObserver((list) => {
  list.getEntries().forEach((entry) => {
    console.log(
      `${entry.name}: domInteractive time: ${entry.domInteractive}ms`,
    );
  });
});

observer.observe({ type: "navigation", buffered: true });

Ví dụ dùng Performance.getEntriesByType():

js
const entries = performance.getEntriesByType("navigation");
entries.forEach((entry) => {
  console.log(`${entry.name}: domInteractive time: ${entry.domInteractive}ms`);
});

Thông số kỹ thuật

Thông số kỹ thuật
Navigation Timing Level 2
# dom-performancenavigationtiming-dominteractive

Tương thích trình duyệt

Xem thêm