3 回答

TA贡献1982条经验 获得超2个赞
替换行:
ulElement.appendChild(fragment);
和:
ulElement.insertBefore(fragment, ulElement.firstChild);

TA贡献1906条经验 获得超3个赞
谢谢你的提问;我的代码在这里:
const ulElement = document.getElementById('nav-list');
const fragment = document.createDocumentFragment();
const listItems = ['Home', 'Work', 'Contact'];
listItems.forEach(item=>{
const li = document.createElement('li');
li.textContent = item;
li.setAttribute('id', item.toLowerCase());
fragment.appendChild(li);
return li;
});
ulElement.appendChild(fragment);
ulElement.addEventListener("click",event=>{
let li =event.target;
if(li.tagName==='LI'){
fragment.appendChild(li);
ulElement.insertBefore(fragment,ulElement.firstElementChild);
}
});
我觉得这个方案更好。
添加回答
举报