HTMLElement: phương thức attachInternals()

Baseline Widely available

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

Phương thức HTMLElement.attachInternals() trả về một đối tượng ElementInternals. Phương thức này cho phép một phần tử tùy chỉnh tham gia vào các biểu mẫu HTML. Giao diện ElementInternals cung cấp các tiện ích để làm việc với các phần tử này theo cách tương tự như khi làm việc với bất kỳ phần tử biểu mẫu HTML tiêu chuẩn nào, đồng thời cũng hiển thị Accessibility Object Model (Mô hình đối tượng khả năng tiếp cận) cho phần tử.

Cú pháp

js
attachInternals()

Tham số

Không có.

Giá trị trả về

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

Ngoại lệ

NotSupportedError DOMException

Được ném ra nếu phần tử không phải là phần tử tùy chỉnh.

NotSupportedError DOMException

Được ném ra nếu tính năng "internals" bị vô hiệu hóa như một phần của định nghĩa phần tử.

NotSupportedError DOMException

Được ném ra nếu phương thức này được gọi hai lần trên cùng một phần tử.

Ví dụ

Ví dụ sau minh họa cách tạo một phần tử biểu mẫu tùy chỉnh liên kết với HTMLElement.attachInternals. Thuộc tính ElementInternals.form sau đó được in ra console để minh họa rằng chúng ta có một đối tượng ElementInternals.

js
class CustomCheckbox extends HTMLElement {
  static formAssociated = true;

  constructor() {
    super();
    this.internals_ = this.attachInternals();
  }
  // …
}

window.customElements.define("custom-checkbox", CustomCheckbox);

let element = document.getElementById("custom-checkbox");
console.log(element.internals_.form);

Đặc tả kỹ thuật

Specification
HTML
# dom-attachinternals

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

Xem thêm