从原生元素中分辨出自定义 HTML 元素

Tell custom HTML elements from native ones

在所有 google Web 组件教程中,它为自定义元素推荐了一种特定的命名方案。他们推荐这样的事实可能是为了提高可读性,但这引出了一个问题:是否有任何方法可以可靠地(以编程方式)判断 HTML 元素是自定义元素还是本机元素?例如,聚合物元素 HTML Element 个实例,并且具有所有正确的属性。

理想情况下,无需区分两者之间的区别 - 您的元素在各个方面都应该像原生 HTML 元素一样发挥作用。但是,如果您出于某种原因绝对必须专门针对它们,则可以查找名称中包含连字符的元素。自定义元素必须包含连字符(例如 <my-element>)才能有效,而如果我没记错的话,HTML5 规范中没有元素包含该连字符。

注意:我没有通过规范仔细检查这一点 - 但我确实相信缺少连字符是这种情况。