在不知道嵌套层数的情况下,只选择嵌套div
的底部,可以使用递归的方法来遍历所有的嵌套div
,并找到底部的div
。
下面是一个示例的代码实现:
function findBottomDiv(element) {
// 检查当前元素是否为 div
if (element.tagName.toLowerCase() === 'div') {
// 检查当前 div 是否有嵌套的 div
let childDivs = element.getElementsByTagName('div');
if (childDivs.length === 0) {
// 如果当前 div 没有嵌套的 div,则当前 div 就是底部的 div
return element;
} else {
// 递归调用 findBottomDiv 函数,查找嵌套的 div 中的底部 div
return findBottomDiv(childDivs[childDivs.length - 1]);
}
} else {
// 如果当前元素不是 div,则继续检查其子元素中的 div
let childDivs = element.getElementsByTagName('div');
for (let i = 0; i < childDivs.length; i++) {
let bottomDiv = findBottomDiv(childDivs[i]);
if (bottomDiv) {
// 如果找到底部的 div,则返回底部的 div
return bottomDiv;
}
}
}
// 如果没有找到底部的 div,则返回 null
return null;
}
// 示例使用
let rootDiv = document.getElementById('root');
let bottomDiv = findBottomDiv(rootDiv);
console.log(bottomDiv);
上述代码中,findBottomDiv
函数接收一个 DOM 元素作为参数,并通过递归遍历该元素及其子元素,来查找嵌套的 div
中的底部 div
。如果找到底部的 div
,则返回该元素;如果没有找到底部的 div
,则返回 null
。
你可以将上述代码添加到你的项目中,并根据实际情况调用 findBottomDiv
函数来找到底部的 div
。