我发现了有关遍历dom的信息,该信息是从单击的元素中获取节点的...
Traversing up the DOM getting the node from a clicked element
谁能帮助我在面包屑中包括id =和class =属性,就像您在大多数错误调查者中看到的那样?
所以而不是:
HTML > BODY > UL > LI > SPAN
我想要:
HTML > BODY > UL.menu > LI > SPAN#whatever
...或类似的东西。
答案 0 :(得分:1)
除了添加到linked code之外,下面的代码将在元素上附加所有ID和类。
点击元素<div id="id1" class="class1 class2">Test</div>
...
将输出 HTML> BODY> DIV#id1.class1.class2
function clickHandler(event) {
var target = event.target,
breadcrumb = [];
while (target) {
var id = target.id;
var classes = target.className;
var crumb = target.tagName;
if (id) {
crumb += "#" + id;
}
if (classes) {
var classList = classes.split(' ');
for (var c = 0; c < classList.length; c++) {
crumb += "." + classList[c];
}
}
breadcrumb.unshift(crumb);
target = target.parentElement;
}
console.log(breadcrumb.join(" > "));
}
document.addEventListener('click', clickHandler, false);