Document: phương thức getSelection()

Baseline Widely available

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

Phương thức getSelection() của giao diện Document trả về đối tượng Selection được liên kết với tài liệu này, đại diện cho phạm vi văn bản được chọn bởi người dùng, hoặc vị trí hiện tại của caret.

Cú pháp

js
getSelection()

Tham số

Không có.

Giá trị trả về

Một đối tượng Selection, hoặc null nếu tài liệu không có browsing context (ví dụ: đó là tài liệu của một <iframe> không được đính kèm với một tài liệu).

Ví dụ

Lấy đối tượng Selection

js
const selection = document.getSelection();
const selRange = selection.getRangeAt(0);
// thực hiện các thao tác với range

console.log(selection); // Đối tượng Selection

Biểu diễn chuỗi của đối tượng Selection

Một số hàm (như Window.alert()) gọi toString() tự động và giá trị trả về được truyền cho hàm. Do đó, điều này sẽ trả về văn bản đã chọn chứ không phải đối tượng Selection:

js
alert(selection);

Tuy nhiên, không phải tất cả các hàm đều gọi toString() tự động. Để sử dụng đối tượng Selection dưới dạng chuỗi, hãy gọi phương thức toString() của nó trực tiếp:

js
let selectedText = selection.toString();

Các đối tượng liên quan

Bạn có thể gọi Window.getSelection(), giống hệt với window.document.getSelection().

Cũng đáng lưu ý rằng hiện tại getSelection() không hoạt động trên nội dung của các phần tử <input> trong Firefox. HTMLInputElement.setSelectionRange()) có thể được sử dụng để khắc phục điều này.

Cũng lưu ý sự khác biệt giữa selection (vùng chọn) và focus (tiêu điểm). Document.activeElement trả về phần tử đang có tiêu điểm.

Đặc tả kỹ thuật

Specification
Selection API
# dom-document-getselection

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