从嵌套列表项类JavaScript获取文本内容的方法如下:
下面是一个示例代码:
function getTextFromNestedList(element) {
let text = '';
function traverseList(item) {
for (let i = 0; i < item.childNodes.length; i++) {
const node = item.childNodes[i];
// 如果节点类型是元素节点,检查是否是列表项
if (node.nodeType === 1 && node.tagName.toLowerCase() === 'li') {
// 获取当前列表项的文本内容
text += node.innerText + ' ';
// 检查当前列表项是否包含子列表
const subList = node.querySelector('ul');
if (subList) {
// 递归遍历子列表
traverseList(subList);
}
}
}
}
// 调用遍历函数开始获取文本内容
traverseList(element);
return text.trim();
}
// 获取嵌套列表的DOM元素
const nestedList = document.getElementById('nested-list');
// 获取文本内容
const textContent = getTextFromNestedList(nestedList);
console.log(textContent);
在上述示例代码中,我们定义了一个名为getTextFromNestedList的函数,它接受一个嵌套列表的DOM元素作为参数,并返回该列表中所有文本内容。我们使用了递归的方式遍历嵌套列表的所有项,并通过innerText属性获取到每个列表项的文本内容。最后,我们调用这个函数,并将嵌套列表的DOM元素传入,得到了所需的文本内容。
请注意,此示例中的代码只适用于基本的嵌套列表结构,如果列表嵌套更深或包含其他复杂元素,则需要进行相应的修改。
领取专属 10元无门槛券
手把手带您无忧上云