Как отличить нативный HTMLE-элемент от созданного / пользовательского?
Предположим, у меня есть следующий HTML-код:
<header>
<nav>
<ul>
<li>My first menu</li>
<li>My second menu</li>
</ul>
</nav>
<header>
<main>
<section>
<h2>My title</h2>
<my-beautiful-text>My text</my-beautiful-text>
</section>
</main>
<footer>
Copyright © 2015
</footer>
Пока я зацикливаю все элементы, я хотел бы знать, если элемент (например, nav
) является нативным элементом HTMLElement или созданным (например, my-beautiful-text
).
Я уже искал его в Google и здесь, но не повезло.
Мои попытки использовали constructor
а также instanceof
и это работает для некоторых элементов, таких как span
, div
, input
и т. д., но он не работает для некоторых компонентов, которые не перекрывают HTMLElement
прототип. Есть догадки?
1 ответ
Решение
Имена тегов с тире являются пользовательскими.
Смотрите спецификации http://w3c.github.io/webcomponents/spec/custom/