去创造<div id="hello"></div>
尝试
$('<div id="hello"></div>').appendTo('body');
创建<div id="test" class="a b"></div>
与
$('<div id="test" class="a b"></div>').appendTo('body');
$('<div id="test" class="a b"></div>')
将创建新元素但不会将其添加到 DOM。
要添加该元素,您需要使用append()或appendTo()或insetAfter()或insertBefore()等等。
最好使用函数来:
function createElement(el, target) {
$(el).appendTo(target);
}
使用如下功能:
createElement('<div id="test" class="a b"></div>', 'body');
您还可以将新创建的元素附加到任何其他目标而不是body
.
我认为以下功能会对您有所帮助:
function createElement(el, prop, target) {
var props = prop.split('.'),
newelement = $(el),
id = '',
className = '';
$.each(props, function(i, val) {
if(val.indexOf('#') >= 0) {
id += val.replace(/^#/, '');
} else {
className += val + ' ';
}
});
if(id.length) newelement.attr('id', id);
if(className.length) newelement.attr('class', className.trim());
$(newelement).html('Newly born').appendTo(target);
}
createElement('div', '#test.a.b', '#con'); // will work for #test.a.b or, .a.b or, #test.a
演示