Range: phương thức cloneContents()

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 cloneContents() của giao diện Range sao chép các nút con Node đã chọn của commonAncestorContainer của range và đặt chúng vào một đối tượng DocumentFragment mới.

Các nút được sao chép bằng cùng thuật toán với Node.cloneNode(), nghĩa là các trình nghe sự kiện gắn bằng script sẽ không được sao chép. Thuộc tính id của HTML vẫn được sao chép, điều này có thể dẫn đến tài liệu không hợp lệ.

Các nút con đầu tiên và cuối cùng được chọn của commonAncestorContainer có thể chỉ được chọn một phần. Trong trường hợp này, chính nút con đó được sao chép, nhưng nội dung của nó chỉ là phần được chọn, bằng cách đệ quy sao chép range giữa biên bắt đầu/kết thúc của range gốc và biên kết thúc/bắt đầu của nút con đó.

Cú pháp

js
cloneContents()

Tham số

Không có.

Giá trị trả về

Một đối tượng DocumentFragment.

Ví dụ

js
range = document.createRange();
range.selectNode(document.getElementsByTagName("div").item(0));
documentFragment = range.cloneContents();
document.body.appendChild(documentFragment);

Thông số kỹ thuật

Specification
DOM
# dom-range-clonecontents

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

Xem thêm