在JavaScript中,要获取ul元素中而不是li元素中的文本,可以通过以下步骤实现:
- 首先,使用document.querySelector或document.getElementById等方法获取到ul元素的引用。例如,使用querySelector可以通过选择器获取到ul元素的引用,如下所示:var ulElement = document.querySelector('ul');
- 接下来,可以使用ul元素的childNodes属性或querySelectorAll方法获取到ul元素下的所有子节点。childNodes属性返回一个包含ul元素所有子节点的NodeList对象,而querySelectorAll方法返回一个包含匹配选择器的所有元素的NodeList对象。例如,可以使用childNodes属性获取到ul元素下的所有子节点,如下所示:var childNodes = ulElement.childNodes;或者使用querySelectorAll方法获取到ul元素下的所有li元素,如下所示:var liElements = ulElement.querySelectorAll('li');
- 然后,遍历子节点或li元素,判断节点类型是否为文本节点,如果是文本节点,则获取其文本内容。可以使用nodeType属性判断节点类型,其中文本节点的nodeType值为3。例如,可以使用for循环遍历childNodes,判断节点类型并获取文本内容,如下所示:for (var i = 0; i < childNodes.length; i++) {
var node = childNodes[i];
if (node.nodeType === 3) {
var text = node.textContent || node.innerText;
console.log(text);
}
}或者使用forEach方法遍历liElements,判断节点类型并获取文本内容,如下所示:liElements.forEach(function(liElement) {
var node = liElement.firstChild;
if (node.nodeType === 3) {
var text = node.textContent || node.innerText;
console.log(text);
}
});
通过以上步骤,就可以获取到ul元素中而不是li元素中的文本内容。请注意,以上代码仅为示例,实际应用中可能需要根据具体情况进行适当的修改和调整。
参考链接: