2013-12-10 117 views
0

我有三個div。我應該如何將div附加到未知的div上?在unknodw div上附加div div

<div class="main" > 
<div id="drag-box" > 
    <div id="" class=""> </div> 
</div> 
    </div> 

我想追加一個未知的div,它是在拖動盒格後出現的。我不知道哪個div在拖動div後出現。但是在拖動div之後必須有一個div。

+0

我不想使用身份證,類未知div – user3030853

+0

你應該考慮閱讀關於DOM :-)在Mdn我已經鏈接它在我的回答 – ShrekOverflow

回答

1
$("#drag-box div:first-child").append("<span />"); 

$("#drag-box div").first().prepend("<span>first</span>"); 

對於一個完整的答案,這是工作:

http://jsfiddle.net/dMUD3/

+0

感謝它的運行... – user3030853

+0

哦,不錯。請接受這種情況下的答案。 – Alex

1

試試這個

$("#drag-box div:first-child").attr("id"); 
+0

我不知道誰upvoted這個答案,但它沒有道理...... –

+0

@MichalB。你有沒有使用過jQuery?嘗試閱讀這篇文章之前發佈任何事情http://api.jquery.com/first-child-selector/ –

+0

無後顧之憂,我完全理解它的作用。操作系統問如何追加到/之後沒有身份證的股利,你試圖爲他取回身份證... –

0

你需要的+選擇。它適用於直接跟隨的對象。請參閱here

.drag-box + div { 

} 
+0

這樣但不工作 – user3030853

+0

這是一個div後。像'

'。這就是我解釋'追趕'的方式,但看起來你確實需要第一個子元素。 – randak

0
$('<div></div>').appendTo($('#drag-box div:first')) 
1

而不是給你一個襯墊,我想給你一個深刻的見解lution。

瀏覽器需要你的html並解析出所謂的DOM樹。

所以如果你的html是。

<div class="a"> 
    <div class="foo"></div> 
    <button class="foogle"></button> 
</div> 

樹狀結構將變得像

`-div.a 
    |-div.foo 
    `Button.foogle 

你實際上應該考慮DOM API的在MDN

DOM如何幫助?

使用DOM api,您可以使用對已知div的引用實際訪問未知div。所以,如果你真的瞭解你的標記及其在DOM中的表示,那麼獲得對元素的第n個子元素的引用應該非常簡單;

您可以通過children屬性訪問子元素。

所以

// Get reference to the element. 
var parent = document.getElementById("drag-box"); 

// Use the dom. 
var child_i_want = parent.children[0]; 
// or there is another way 
var child_i_reallyWant = parent.firstElementChild; 

有jQuery的解決方案,但我覺得它重要的是你要了解DOM的基本知識,即使有在所有腦幹有益的抽象庫。