Mam element niestandardowy zdefiniowane tak:udało się skonstruować błąd „CustomElement” kiedy plik JavaScript jest umieszczony w głowicy
class SquareLetter extends HTMLElement {
constructor() {
super();
this.className = getRandomColor();
}
}
customElements.define("square-letter", SquareLetter);
Gdy plik JavaScript jest włączone HTML <head>
tagiem raporty konsoli Chrome ten błąd :
Uncaught DOMException: Failed to construct 'CustomElement': The result must not have attributes
Ale gdy plik JavaScript jest włączone przed </body>
kończącego tagu, wszystko działa bez zarzutu. Jaki jest powód?
<head>
<script src="js/SquareLetter.js"></script> <!-- here -->
</head>
<body>
<square-letter>A</square-letter>
<script src="js/SquareLetter.js"></script> <!-- or here -->
</body>
Prawdopodobny duplikat [Nie można uzyskać dostępu do atrybutów niestandardowego elementu od jego konstruktora] (http://stackoverflow.com/questions/42251094/cannot-access-attributes-of-a-ustom-element-from--constructor) – Supersharp