Sanitizer: phương thức removeAttribute()

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

Phương thức removeAttribute() của giao diện Sanitizer đặt một thuộc tính để bị xóa khỏi tất cả các phần tử khi bộ làm sạch được dùng.

Phương thức có thể được dùng với cấu hình cho phép hoặc cấu hình xóa. Nếu dùng với cấu hình xóa, thuộc tính được chỉ định sẽ được thêm vào mảng removeAttributes. Nếu dùng với cấu hình cho phép, thuộc tính sẽ bị xóa khỏi mảng attributes (nếu có).

Lưu ý rằng để cho phép/không cho phép các thuộc tính chỉ trên các phần tử cụ thể, hãy dùng Sanitizer.allowElement().

Cú pháp

js
removeAttribute(attribute)

Tham số

attribute

Một chuỗi cho biết tên của thuộc tính không được phép toàn cục trên các phần tử, hoặc một đối tượng với các thuộc tính sau:

name

Một chuỗi chứa tên của thuộc tính.

namespace Optional

Một chuỗi chứa không gian tên của thuộc tính, mặc định là null.

Giá trị trả về

true nếu thao tác thay đổi cấu hình để không cho phép thuộc tính, và false nếu thuộc tính đã bị cấm.

Lưu ý rằng false có thể được trả về nếu cấu hình nội bộ:

  • định nghĩa mảng removeAttributes đã chứa thuộc tính được chỉ định (và do đó đã bị lọc)
  • thay vào đó định nghĩa mảng attributes đã bỏ qua thuộc tính (và do đó đã bị cấm)

Ví dụ

Cách không cho phép các thuộc tính cụ thể

Ví dụ này cho thấy cách removeAttribute() được dùng để chỉ định rằng một thuộc tính phải bị xóa khỏi các phần tử.

JavaScript

Mã trước tiên tạo một đối tượng Sanitizer mới ban đầu không chỉ định thuộc tính hoặc phần tử nào. Sau đó chúng tôi gọi removeAttribute() với các thuộc tính titlemathcolor.

js
// Tạo bộ làm sạch cho phép
const sanitizer = new Sanitizer({
  removeAttributes: [],
});

// Xóa thuộc tính title
sanitizer.removeAttribute("title");
// Xóa thuộc tính mathcolor
sanitizer.removeAttribute("mathcolor");

// Ghi nhật ký cấu hình bộ làm sạch
let sanitizerConfig = sanitizer.get();
log(JSON.stringify(sanitizerConfig, null, 2));

Kết quả

Cấu hình cuối cùng được ghi nhật ký bên dưới. Lưu ý cách cả hai thuộc tính hiện được thêm vào danh sách removeAttributes (các thuộc tính này sẽ bị xóa nếu có trên các phần tử khi bộ làm sạch được dùng).

Thông số kỹ thuật

Specification
HTML Sanitizer API
# dom-sanitizer-removeattribute

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