Webの奇妙冒险(更新中)

Web发展中的历史包袱

Referer

Referer的正确英语拼法是referrer。这是早期HTTP规范当中存在的拼写错误,后来为保持向下兼容将错就错。例如DOM Level 2[1]、Referrer Policy[2]等其他网络技术的规范曾试图修正此问题,使用正确拼法,导致目前拼法并不统一。

HTMLCollection 和 NodeList

类型 live or static 属性 方法
NodeList 浏览器各自实现 length item(idx)
HTMLCollection live length item(idx)、namedItem(id)

众所周知,HTML是从更早的XML中脱胎而出的,所以早期的HTML有非常多的语法规范、解析API设计参考(抄)了XML。
在HTML拥有自己专属的DOM API之前,NodeList长期作为凑合方案在几乎所有浏览器中得到了实现。
这也就不难解释NodeList在不同浏览器上表现并不那么一致,甚至在同一浏览器中的不同API中,返回的元素集合状态 live/static 也有可能不同。
而伴随DOM相关提案而来的HTMLCollection就容易理解的多了,HTMLCollection只包含DOM Element,并且都是live的。

Licensed under CC BY-NC-SA 4.0
Built with Hugo
主题 StackJimmy 设计