考虑这个包含两个平级的
如何初始化(启动构造函数)从
请注意,脚本带有
x-element
和一个嵌套的x-element
的HTML模板
。<template id="fooTemplate">
<x-element>Enter your text node here.</x-element>
<x-element>
<x-element>Hello, World?</x-element>
</x-element>
</template>
如何初始化(启动构造函数)从
fooTemplate
克隆的所有自定义元素文档片段,而不将其附加到DOM中,也不通过使用is="x-element"
扩展内置元素;或者整个片段。class XElement extends HTMLElement {
constructor() { super(); }
foo() { console.log( this ); }
} customElements.define( 'x-element', XElement );
const uselessf = function( temp ) {
const frag = window[ temp ].content.cloneNode( true );
/* Your magic code goes here:
*/ do_black_magic( frag );
for (const e of frag.querySelectorAll('x-element') )
e.foo(); // This should work.
return frag;
};
window['someNode'].appendChild( uselessf('fooTemplate') );
请注意,脚本带有
defer
属性执行。