jQuery文档没有提到这个案例,但它仍然有效。所以,我想稍微提一下它们。
var div1 = $("<div></div>");
var div2 = $("<div>");
他们两个都创建了相同的div标签,为什么没有文档说我们应该使用第二个writing code faster
?
想象一下,如果我们想要创建这样的模板:
<div class="parent">
<div class="child">
<span>Welcome!<span>
</div>
</div>
我们应该这样做(1)
:
$('<div class="parent"><div class="child"><span>Welcome!</span></div></div>');
或(2)
:
$('<div class="parent"></div>').html($('<div class="child"></div>').html($('<span>Welcome!</span>')));
或(3)
:
$('<div>').addClass('parent').html($('<div>').addClass('child').html($('<span>').text('Welcome!')));
var span = $('<span>').text('Welcome!'),
child = $('<div>').addClass('child').html(span),
parent = $('<div>').addClass('parent').html(child);
正如我们所看到的,(3)
非常容易编写和阅读,因为我们不需要关心结束标记。
我们是否应该在主站点上提示使用此功能?如果没有,请在使用时纠正错误。
谢谢!
答案 0 :(得分:0)
当参数包含单个标记(带有可选的结束标记或快速关闭) -
$( "<img />" )
或$( "<img>" )
,$( "<a></a>" )
或$( "<a>" )
时,jQuery会使用本机JavaScript .createElement()函数。