MutationObserver: phương thức disconnect()

Baseline Widely available

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

Phương thức MutationObserver disconnect() yêu cầu observer ngừng theo dõi các biến đổi.

Observer có thể được dùng lại bằng cách gọi lại phương thức observe() của nó.

Cú pháp

js
disconnect()

Tham số

Không có.

Giá trị trả về

undefined.

Note: Tất cả thông báo về các biến đổi đã được phát hiện nhưng chưa được báo cáo cho observer sẽ bị loại bỏ. Để giữ lại và xử lý các biến đổi đã phát hiện nhưng chưa được báo cáo, hãy dùng phương thức takeRecords().

Ghi chú sử dụng

Nếu phần tử đang được theo dõi bị xóa khỏi DOM, rồi sau đó được giải phóng bởi cơ chế thu gom rác của trình duyệt, MutationObserver sẽ ngừng quan sát phần tử bị xóa đó. Tuy nhiên, bản thân MutationObserver vẫn có thể tiếp tục tồn tại để quan sát các phần tử hiện có khác.

Ví dụ

Ví dụ này tạo một observer, sau đó ngắt kết nối nó, để nó vẫn sẵn sàng cho việc tái sử dụng trong tương lai.

js
const targetNode = document.querySelector("#someElement");
const observerOptions = {
  childList: true,
  attributes: true,
};

const observer = new MutationObserver(callback);
observer.observe(targetNode, observerOptions);

/* một lúc sau… */

observer.disconnect();

Thông số kỹ thuật

Thông số kỹ thuật
DOM
# ref-for-dom-mutationobserver-disconnect①

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