我有三个div。我应该如何将div添加到未知的div上?
<div class="main" >
<div id="drag-box" >
<div id="" class=""> </div>
</div>
</div>
我想在一个未知的div上追加div,这是在drag-box div之后。我不知道哪个div在拖拽div之后出现。但是在拖拽框div之后必须有一个div。
答案 0 :(得分:1)
试试这个
$("#drag-box div:first-child").attr("id");
答案 1 :(得分:1)
$("#drag-box div:first-child").append("<span />");
或
$("#drag-box div").first().prepend("<span>first</span>");
要获得完整答案,请点击此处:
答案 2 :(得分:1)
而不是给你一个单行,我想给你一个深思熟虑的解决方案。
浏览器接受你的html并从中解析出所谓的DOM树。
所以如果你的html是。
<div class="a">
<div class="foo"></div>
<button class="foogle"></button>
</div>
树结构将变成类似
的结构 `-div.a
|-div.foo
`Button.foogle
您应该在MDN
中查看DOM ApiDOM如何帮助?
使用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的基础也很重要。
答案 3 :(得分:0)
你需要+选择器。它适用于直接跟随的对象。见here。
.drag-box + div {
}
答案 4 :(得分:0)
$('<div></div>').appendTo($('#drag-box div:first'))