所需的输出
<div class="dropdown_container">
<div class="dropdown" style="top: 50px; left: 50px;">test</div>
</div>
当前输出
<div class="dropdown" style="top: 50px; left: 50px;">test</div>
我尝试过的事情
var $dropdown = $(`
<div class="dropdown">
test
</div>
`);
$dropdown.offset({
top: '50',
left: '50'
});
$dropdown.wrap("<div class=\"dropdown_container\"></div>");
$("body").append($dropdown);
.dropdown {
position: absolute;
}
.dropdown_container {
position: relative;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
答案 0 :(得分:0)
对不起,也许我听不懂,但为什么不直接做
"{0:,.0f}".format
??
答案 1 :(得分:0)
对于我来说,目前尚不清楚为什么您最初不仅仅包含外部div
的标记,但是wrap
不起作用的原因是它希望对已经存在于外部元素中的元素进行操作DOM。
您可以只创建div
并将其他dvi
附加到其中:
$("body").append($("<div>").append($dropdown));
答案 2 :(得分:0)
您可以在下面尝试代码。一切都只需要一行:
$(function(){
$('<div class="dropdown" style="top: 50px; left: 50px;">test</div>')/*your $dropdown*/.appendTo($('<div class="dropdown_container"></div>').appendTo($("body")));
});
尝试online
但是如果您喜欢自己的解决方案(.wrap(..) method
),下面的代码将很有用(尽管我建议您采用第一种方式,因为在创建元素后,它们会向body
添加元素而且也更轻):
$(function(){
$('<div class="dropdown" style="top: 50px; left: 50px;">test</div>')/*your $dropdown*/.appendTo($("body")).wrap($('<div class="dropdown_container"></div>'));
});