自定义元素与Web组件自定义元素

时间:2013-12-24 09:03:34

标签: javascript html5 web-component w3c

我刚开始使用自定义元素,根据this文章,自定义元素可以定义如下:

var proto = Object.create(HTMLElement.prototype);
proto.createdCallback = function () { ... };
proto.enteredViewCallback = function () { ... };
document.register('x-foo', {
    prototype: proto
});

这在我的Chrome浏览器中效果很好,每次创建新元素时都会调用'createdCallback'。

现在,如果我查看官方文档here,我没有看到,例如,在任何地方提到的createdCallback。有人理解W3C文档并解释其原因吗?

此外,看custom elements from web-components他们看起来完全不同。所以现在有两种不同类型的自定义元素。这没有任何意义,或者这两者是否可以共存?

1 个答案:

答案 0 :(得分:5)

createdCallback以前称为readyCallback

  

自定义元素具有可用于设置的生命周期回调   自定义元素的表示方面。这些是:readyCallback,   在创建自定义元素后调用; insertedCallback,   在将自定义元素插入文档后调用;   和removedCallback,在删除自定义元素后调用   来自文件

http://www.w3.org/TR/components-intro/#lifecycle-callbacks

在以下错误条目中对此进行了更改:Bug 22564 - [Custom]: Rename readyCallback to createdCallback。讨论here

它不符合规范的原因是因为该错误已于2013年7月得到解决,而草案在6月更新。这是以下工作草案的陷阱!