2015-02-23 59 views
0

我試圖(在原生Javascript中,所以沒有jQuery或任何東西)獲取div的發生前後的內容。使用原生JavaScript獲取id(或類)之前和之後div的內容

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>... 

注:
可能有更多的div,跨度等在HTML的例子。

+1

可能的重複,http://stackoverflow.com/questions/8647216/get-content-of-a-div-using-javascript – mrciga 2015-02-23 21:38:51

+1

@mrciga絕對沒有重複;-) – 2015-02-23 21:44:11

+0

@bvl:請問主要問題 – kenorb 2015-02-23 21:50:35

回答

3

你需要這樣的:

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

而且閱讀, previousSibling和previousElementSibling之間的區別是,previousSibling返回前一個兄弟節點爲元素節點,文本節點或註釋節點,而previousElementSibling返回前一個兄弟節點作爲元素節點(忽略文本和註釋節點)。

+0

非常棒@roshan這是*正是*我正在尋找。我喜歡jQuery,但我不知道所有這些原生JS的可能性。 – 2015-02-24 01:44:38

相關問題