Javascript Jquery以查找最后一个嵌套元素
我理解使用.last()或:last child等获取元素的最后一个同级元素的用法,但是如果不使用任何类或ID,如何获取具有相同标记名的最内部元素text() 例如:Javascript Jquery以查找最后一个嵌套元素,javascript,jquery,html,Javascript,Jquery,Html,我理解使用.last()或:last child等获取元素的最后一个同级元素的用法,但是如果不使用任何类或ID,如何获取具有相同标记名的最内部元素text() 例如: $(body).find('div').text(); 获取此文本 然后得到这个文本 当我使用循环使用$.each返回每个div上的文本时,我将返回每个div的text()的文本副本 提前感谢您可以通过组合/选择器来选择不包含子元素的div元素。这实际上否定了所有具有子元素的div元素: $('div:not(:has(*)
$(body).find('div').text();
获取此文本
然后得到这个文本
当我使用循环使用$.each返回每个div上的文本时,我将返回每个div的text()的文本副本
提前感谢您可以通过组合/选择器来选择不包含子元素的
div
元素。这实际上否定了所有具有子元素的div
元素:
$('div:not(:has(*))').text();
如果需要数组文本字符串:
这是一个固有的递归问题,以下内容也会起作用:
function getText(elem) {
if (elem.children().length === 0) {
console.log( elem.html() );
} else {
elem.children().each( function() {
getText($(this));
}
);
}
}
getText( $('div').first() );
var textArray = $('div:not(:has(*))').map(function (_, el) {
return el.innerText;
}).get();
console.log(textArray);
function getText(elem) {
if (elem.children().length === 0) {
console.log( elem.html() );
} else {
elem.children().each( function() {
getText($(this));
}
);
}
}
getText( $('div').first() );