我已多次看到如何使用JQuery获取元素的DOM路径,但从未如何向相反的方向发展:如何从DOM路径获取元素?
假设我有一个DOM路径,如" html / body / div1 / div2 / div2 / div3 / div3 / em&#34 ;;我想突出显示路径描述的元素,所以我需要创建一个指向该元素的JQuery选择器,然后我可以自由地使用一些函数来突出显示它。
我该怎么做?
目前,我尝试构建一个函数,它将分割数组中的路径,然后在其上循环,每次处理所有子节点,直到找到我需要的节点;正如你可能理解的那样,它非常复杂,特别是因为我可以找到每个标签,我不能为每个标签制作一个开关盒...我希望有更快更简单的东西
无论如何,这就是我现在所做的事情:
function reconstructNodes(selectorlist)
{
var range = $('#panelWithHTML').children();
var array = selectorlist.split("/");
for (var i = 0; i < array.length; i++) {
range = range.children();
switch (array[i]) {
case 'html':
for (var j = 0; j < range.length; j++)
{
if (range[j].tagName === 'BODY') {
range = range[j];
}
}
break;
case 'body':
for (var j = 0; j < range.length; j++)
{
}
break;
}
}
}
正如你所看到的,我从开关开始,但它将是一个永恒的代码编写。
有什么想法吗?