从附加元素获取jQuery对象的更简单方法
使用jQuery append添加元素是否有一种更简单/更快的方法: 如何获取$selectors元素:从附加元素获取jQuery对象的更简单方法,jquery,css-selectors,append,Jquery,Css Selectors,Append,使用jQuery append添加元素是否有一种更简单/更快的方法: 如何获取$selectors元素: $container.append('<div class="selectors"></div>'); var $selectors = $('.selectors', $container); $container.append(“”); 变量$selectors=$('.selectors',$container); 我试过: var $selectors =
$container.append('<div class="selectors"></div>');
var $selectors = $('.selectors', $container);
$container.append(“”);
变量$selectors=$('.selectors',$container);
我试过:
var $selectors = $container.append('<div class="selectors"></div>');
var$selectors=$container.append(“”);
但这使得$selector=$container
也许这是最快/最好的方法。只是检查一下。为什么不:
var el = $('<div class="selectors"></div>');
$container.append(el);
var el=$('');
$container.append(el);
?
然后您就可以访问“el”。这是我最喜欢的方法:
var $selectors = $('<div class="selectors"></div>').appendTo(container);
var$selectors=$('').appendTo(容器);
$selectors=$('').addClass('selectors').appendTo($container);
您还可以创建一个新的jQuery函数:
jQuery.fn.addChild = function(html)
{
var target = $(this[0])
var child = $(html);
child.appendTo(target);
return child;
};
然后像这样使用它:
$('<ul>').addChild('<li>hi</li>');
$(“”).addChild(“- hi
”);
当然,如果您想添加多个项目:
var list = $('<ul>');
list.addChild('<li>item 1</li>');
list.addChild('<li>item 2</li>');
var list=$(“”);
列表.添加子项(“- 项目1
”);
列表.添加子项(“- 第2项”);
这种方法的优点是,以后如果愿意,可以向“addChild”函数添加更多内容。请注意,对于上述两个示例,您都需要将元素添加到文档中,因此完整示例可能是:
$('body').addChild('<ul>').addChild('<li>hi</li>');
$('body').addChild('').addChild('- hi
');
+1-我也是。在将新创建的元素附加到DOM之前,请完成所有需要处理的操作。非常好的信息,谢谢。与其他答案相比,这对我来说有点冗长,但我想知道它是否在性能方面做得更好?在我的特殊情况下,表现不是一个问题,但对其他人来说可能是一个问题;附加到文件中不是问题的一部分。你可以像cletus一样简单,让读者想象$container是UL$container.append(“hi ”);不管怎样,很好。谢谢,嗯。如果在这种情况下,$container
有多个元素,会发生什么情况?在我的例子中,我想在选择器匹配的所有实例中添加一些内容,并获取已创建元素的集合。这将不适用于$container
的多个实例。改用appendTo
技巧
$('body').addChild('<ul>').addChild('<li>hi</li>');