我創建了一個帶有陰影dom的元素,最終用於自定義元素。我的HTML文件已經有點臃腫了,所以我最好喜歡將我的所有模板移動到java腳本中,而不是在我的html主體中引用模板。在javascript中定義陰影DOM模板
我試過這個方法這樣做:
var template = document.createElement('template'),
div = document.createElement('div');
div.textContent = 'foo';
template.appendChild(div);
var shadow = document.body.appendChild('div').createShadowRoot();
shadow.appendChild(template.content.cloneNode());
但是,這將引發一個NotFoundError。挖掘更深入,它看起來像template.content只是定義爲#documentFragment
,這似乎可能是問題,但我不知道足夠的陰影dom或模板來說肯定。
有沒有在我的代碼中的錯誤或更好的方式在JavaScript中創建模板?