extends属性的用例似乎很简单(http://www.x-tags.org/docs#custom-tag-registration-extends),但是使用以下标记定义进行测试:
(function () {
xtag.register('dk-foo', {
extends: 'b',
lifecycle: {
created: function () {
this.innerHTML = '*FOO*';
}
}
});
}());
和标记:
<dk-foo>Hello BAR</dk-foo>
似乎没有任何影响(即文字不是粗体),更糟糕的是,它在Chrome上中断。
我测试过IE11,FF28,Safari 5.1.17和Chrome 33/35。除Chrome之外的每个浏览器都会在lifecycle.created
中运行代码(即将文本更改为*FOO*
)。如果我删除了它在Chrome上运行的extends
属性。
我在extends
上找不到比上面的文档更多的文档,也没有找到任何使用它的标签(尽管我当然没有看过所有文档......)。
我可能只是错误地使用extends
属性吗??
答案 0 :(得分:4)
扩展元素时,需要使用is =&#34;&#34;你的语法 加价:。是=&#34;&#34;属性是标准的一部分, 它是从原生元素创建自定义元素的唯一方法。
我试过了,你确实需要is=
和 extends
。我不喜欢is=
所以我实际上只是创建一个内部元素,在您的情况下,内部b
。