元素。
const sections = Array.from(document.getElementsByTagName("section"));
for(section of sections){
const listItem = document.createElement('li');
navList.appendChild(listItem);
}
- 我在这里想念什么
- 这就是任务:
- 如果你使用所有部分的HTML集合,那么它们的标签名如下:
const sections = Array.from(document.getElementsByTagName("section"));
然后您可以迭代这个数组并生成单独的
- 这将使您的代码更加动态,因为当您在index.html文档中添加任何新的部分时,它将动态生成一个新的导航项
我假设您通过动态编码来添加部分。基于此,您可以这样做:
const generateList = () => {
let lis = [];
document.querySelectorAll('section').forEach(section => {
lis.push(`<li>${section.dataset.title}</li>`);
// change "section.dataset.title" according your dom element to grab text.
})
let ul = document.querySelector('ul');
ul.innerHTML = '';
ul.insertAdjacentHTML('afterbegin', lis.join(''));
}