Dan*_*ugg 0 html javascript jquery dom
比较快;
我正在动态创建一些元素,并将它们附加到另一个元素.
$element = $('<input />', {
// attributes
}).add('<label />', {
// attributes
});
Run Code Online (Sandbox Code Playgroud)
这产生<input /><label></label>了各自的属性和内容.我只是想把它包装成一个<div>并且认为会有一个同样干净的方式这样做,但我似乎无法让以下工作:
$element = $('<input />', {
// attributes
}).add('<label />', {
// attributes
}).wrapAll('<div />');
Run Code Online (Sandbox Code Playgroud)
如果我是console.log()我的$element,那只是<input>和<label>.我也试过了
$element = $($('<input />', {
// attributes
}).add('<label />', {
// attributes
})).wrapAll('<div />');
Run Code Online (Sandbox Code Playgroud)
分别选择要追加的元素<input>和<label>元素,然后应用.wrapAll(),但也不起作用,导致与上面相同.
我接近了吗?我应该走另一条路吗?
感谢@mu,结束了以下情况
$element = $('<div />').append($('<input />', {
// attr
}).add('<label />', {
// attr
}));
Run Code Online (Sandbox Code Playgroud)
哦jQuery; 七百万种方式做同样的事情,有时你无法弄清楚一个.
编辑
只为未来的访客添加; 该append方法也可以采用数组:
$('<div />').append([
$('<div />'),
$('<div />'),
$('<div />'),
]);
Run Code Online (Sandbox Code Playgroud)
哪个会产生:
<div>
<div></div>
<div></div>
<div></div>
</div>
Run Code Online (Sandbox Code Playgroud)
所以你不需要链接来电append().
为什么不这样做呢?
var $div = $('<div>').append($element);
Run Code Online (Sandbox Code Playgroud)
例如:http://jsfiddle.net/ambiguous/CQDe8/1/
| 归档时间: |
|
| 查看次数: |
2307 次 |
| 最近记录: |