2015-02-23 1 views
0

Я пытаюсь (в собственном Javascript, поэтому без jQuery или что-то еще), чтобы получить контент до и после появления div.Получите содержимое div до и после id (или класса) с помощью собственного Javascript

HTML:

<div id="thisIsWhatIWant"> 
    <span>foo</span> 
    <div id="helloWorld">hello world</div> 
    <p>bar</p> 
</div> 

Так что я хочу, чтобы получить <span>foo</span> и <p>bar</p> в отдельном Варсе.

JS:

var beforeElement_helloWorld = ...do something to get <span>foo</span>... 
var afterElement_helloWorld = ...do something to get <p>bar</p>... 

примечание:
Там может быть много больше дивов, пролетов и т.д. в примере HTML.

+1

Возможный дубликат, http://stackoverflow.com/questions/8647216/get-content-of-a-div-using-javascript – mrciga

+1

@mrciga Абсолютно нет дубликата ;-) –

+0

@bvl: Пожалуйста, спросите главный вопрос – kenorb

ответ

3

Вам нужно это:

var previous = document.getElementById("helloWorld").previousElementSibling; 
var next = document.getElementById("helloWorld").nextElementSibling; 

прочитать Кроме того, это, Разницы между PreviousSibling и previousElementSibling, что PreviousSibling возвращает предыдущий узел родственного как узел элемента, текстовой узел или комментарий узел, в то время как previousElementSibling возвращает предыдущий узел брата как узел элемента (игнорирует текстовые и комментарии узлов).

+0

Фантастический @roshan - это именно то, что я ищу. Мне нравится jQuery, но я не знаю всех этих возможностей JS. –

Смежные вопросы