2012-01-17 2 views
1

У меня есть закладки, которые отображаются в виде страниц. Мне нужно искать эти страницы для определенной страницы в этом случае - страницы с id «social_page».Обход DOM

Так, чтобы начать, я хватаю содержащий ДИВ

var bookmark_fill = document.getElementById('bookmark_fill'); 

Как лучше пересечь «страницы» в bookmark_fill? Этот простой пример ниже имеет только 2 страницы.

enter image description here

+0

с JQuery. Нет, я не троллинг. Шутки в сторону. jQuery делает это тривиальным. Разве вы не делаете это как опыт обучения? В этом случае первая книга Джона Ресига «Pro JavaScript Techniques» вошла во все детали gore о прохождении dom –

+0

jQuery приходит на ум: $ («bookmark_link») предоставит их. –

+0

@AdamRackis с учетом современного браузера, это не так уж плохо. С помощью native byClass и различных функций итераций Array # вы можете делать практически все тривиально из коробки. – Esailija

ответ

4
var socialPage = document.getElementById("social_page"); 

потому, что идентификаторы должны быть уникальными.

+0

Почему я стараюсь изо всех сил стараться? ... ummm благодарит за здравый смысл. –

+0

@ stack.user.0 Добро пожаловать. :) Рад помочь. –

1

Чтобы получить bookmark_fill узел:

var bookFill = document.getElementById("bookmark_fill"); 

Чтобы получить все страницы там, вы можете использовать метод getElementsByClassName

var allBookMarkPages = bookFill.getElementsByClassName("bookmark_page"); 

for (var i = 0, max = allBookMarkPages.length; i < max; i++) { 
    var allLinks = allBookMarkPages[i].getElementsByClassName("bookmark"); 
} 
Смежные вопросы