https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons
На странице, на которую я ссылался выше, слева есть боковая панель.
Существуют раскрывающиеся списки, которые требуют, чтобы пользователь нажимал на каждый из них, чтобы иметь возможностьчтобы увидеть подсписки.
Я пытался написать код, чтобы он нажимал на все переключаемые списки, чтобы отобразить подсписки.
Использование click()
на родительском элементе ничего не дает, яперепробовал все дочерние и дочерние элементы родительского элемента и обнаружил, что это работает:
x=document.querySelectorAll(".toggle").children[0].children[1];
Итак, я попытался написать код, который делает click()
для всех дочерних элементов, я написал это, и это сработало:
x=document.querySelectorAll(".toggle");
for(i=0;i<x.length;i++){
x[i].click();
y=x[i].children;
for (j=0;j<y.length;j++){
y[j].click();
z=y[j].children;
for(k=0;k<z.length;k++){
z[k].click();
}
}
}
Поскольку я новичок в JS, я пытался использовать оператор for / in, но он не работал:
x=document.querySelectorAll(".toggle");
for(i in x){
x[i].click();
y=x[i].children;
for (j in y){
y[j].click();
z=y[j].children;
for(k in z){
z[k].click();
}
}
}
Uncaught TypeError: z[k].click is not a function
at <anonymous>:9:9
Я также пыталсяМетод forEach, и это также не работает:
x=document.querySelectorAll(".toggle");
var y; var z;
x.forEach(i);
function i(item, index){
item.click();
y=item.children;
y.forEach(j);
}
function j(item,index){
item.click();
z=item.children;
z.forEach(k);
}
function k(item,index){
item.click();
}
Uncaught TypeError: y.forEach is not a function
at i (<anonymous>:7:4)
at NodeList.forEach (<anonymous>)
at <anonymous>:3:3