是否在X-Tag中弃用了`extends`属性?

时间:2014-02-23 15:35:06

标签: javascript google-chrome x-tag

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属性吗??

1 个答案:

答案 0 :(得分:4)

this comment

  

扩展元素时,需要使用is =&#34;&#34;你的语法   加价:。是=&#34;&#34;属性是标准的一部分,   它是从原生元素创建自定义元素的唯一方法。

我试过了,你确实需要is= extends。我不喜欢is=所以我实际上只是创建一个内部元素,在您的情况下,内部b