У меня есть пользовательский элемент, определенный так:
class SquareLetter extends HTMLElement {
constructor() {
super();
this.className = getRandomColor();
}
}
customElements.define("square-letter", SquareLetter);
Когда файл JavaScript включен в тег HTML <head>
, консоль Chrome сообщает об этой ошибке:
Uncaught DOMException: Не удалось создать "CustomElement": результат не должен иметь атрибутов
Но когда файл JavaScript включен перед тегом </body>
, все работает нормально. Какая причина?
<head>
<script src="js/SquareLetter.js"></script> <!-- here -->
</head>
<body>
<square-letter>A</square-letter>
<script src="js/SquareLetter.js"></script> <!-- or here -->
</body>