Пользовательские элементы - коллизии имен, расширяющие HTMLElement

Пользовательские элементы создаются путем расширения класса HTMLElement.

Поэтому, когда вы создаете его, вам, вероятно, придется принять особые меры предосторожности, чтобы не давать вашему пользовательскому элементу никаких имен пользовательских свойств, которые уже унаследованы от HTMLElement.

Я могу представить множество способов избежать этих потенциальных конфликтов имен, но мне были бы интересны предложения других людей или любые лучшие практики по этой теме.

1 ответ

Решение

По предложению @Jared Smith, лучшей практикой будет использование дефисных имен, а точнее data-* обозначение, доступное через dataset имущество.

Обратите внимание, что aria-* Нотация не должна использоваться, потому что она зарезервирована для доступности.

В конце вы можете выбрать любое имя, кроме глобальных атрибутов или определенных атрибутов, если вы расширяете стандартный элемент HTML.

Другие вопросы по тегам