如何将 class 添加到使用 document.createElement 创建的元素?
How to add class to element created using document.createElement?
我已经设法将 class 添加到 ul 元素,但我无法获得正确的语法来将 classes 添加到 li 和 a 元素。有人可以帮忙吗?
<script>
anchors.options.placement = 'left';
anchors.add('.entry-content h2');
generateTableOfContents(anchors.elements);
// External code for generating a simple dynamic Table of Contents
function generateTableOfContents(els) {
var anchoredElText,
anchoredElHref,
ul = document.createElement('UL');
ul.className = "uk-nav uk-nav-default";
document.getElementById('table-of-contents').appendChild(ul);
for (var i = 0; i < els.length; i++) {
anchoredElText = els[i].textContent;
anchoredElHref = els[i].querySelector('.anchorjs-link').getAttribute('href');
addNavItem(ul, anchoredElHref, anchoredElText);
}
}
function addNavItem(ul, href, text) {
var listItem = document.createElement('LI'),
anchorItem = document.createElement('A'),
textNode = document.createTextNode(text);
anchorItem.href = href;
ul.appendChild(listItem);
listItem.appendChild(anchorItem);
anchorItem.appendChild(textNode);
}
</script>
在 ul 中附加 li 标签之前,您需要添加 class 然后将 li 标签附加到 ul 标签,如下所示
var listItem = document.createElement('LI');
listItem.className = 'someClassName';
ul.appendChild(listItem);
我已经设法将 class 添加到 ul 元素,但我无法获得正确的语法来将 classes 添加到 li 和 a 元素。有人可以帮忙吗?
<script>
anchors.options.placement = 'left';
anchors.add('.entry-content h2');
generateTableOfContents(anchors.elements);
// External code for generating a simple dynamic Table of Contents
function generateTableOfContents(els) {
var anchoredElText,
anchoredElHref,
ul = document.createElement('UL');
ul.className = "uk-nav uk-nav-default";
document.getElementById('table-of-contents').appendChild(ul);
for (var i = 0; i < els.length; i++) {
anchoredElText = els[i].textContent;
anchoredElHref = els[i].querySelector('.anchorjs-link').getAttribute('href');
addNavItem(ul, anchoredElHref, anchoredElText);
}
}
function addNavItem(ul, href, text) {
var listItem = document.createElement('LI'),
anchorItem = document.createElement('A'),
textNode = document.createTextNode(text);
anchorItem.href = href;
ul.appendChild(listItem);
listItem.appendChild(anchorItem);
anchorItem.appendChild(textNode);
}
</script>
在 ul 中附加 li 标签之前,您需要添加 class 然后将 li 标签附加到 ul 标签,如下所示
var listItem = document.createElement('LI');
listItem.className = 'someClassName';
ul.appendChild(listItem);