Возможно ли связать вызов parentNode (или что-то подобное)?Цепочка parentNode вызывает
Например, у меня есть этот HTML:
<div id="mainDiv">
<div class="class1" id="id1">
<div class="button" id="button"></div>
</div>
<div class="class2" id="id2">
</div>
</div>
Теперь, скажем, у меня есть слушатель событий на «кнопку». Теперь я хочу изменить id = «id2» на что-то другое, например «newId», поэтому я вызываю эту функцию на «щелчок». Законно ли это сделать что-то вроде этого ?:
function changeIdOfItem(event) {
var event.target.parentNode.parentNode.lastChild.id = "newId";
}
Моя логика в том, что первый ParentNode примет вас до «id1», то второй ParentNode примет вас до «mainDiv», то LastChild примет вас до «id2», где вы можете изменить идентификатор. Если не так, как бы вы это сделали с «чистым» JavaScript?
Пожалуйста, не изменяйте идентификаторы элементов DOM. –
'document.getElementById (" id2 "). Id =" newId ";' (поскольку 'id' уникальны). И обратите внимание, что в вашем примере это 'lastChild' (капитал« C »). «Можно ли сделать что-то подобное?» - да, это «законно» и работает отлично, потому что «parentNode» возвращает родительский узел DOM, который, очевидно, имеет свойство «parentNode» – Ian
Да, это возможно. Ты пробовал ? .lastchild не будет работать. Но с верхним регистром C, возможно. – dievardump