更容易从附加元素获取jQuery对象的方法

时间:2009-09-18 08:31:55

标签: jquery css-selectors append

是否有更简单/更快捷的方法来使用jQuery append添加元素:

如何获取$ selectors元素:

$container.append('<div class="selectors"></div>');
var $selectors = $('.selectors', $container);

我试过了:

var $selectors = $container.append('<div class="selectors"></div>');

但这会使$ selectors = $ container

也许这是最快/最好的方式。只是检查。

4 个答案:

答案 0 :(得分:152)

为什么不呢:

var el = $('<div class="selectors"></div>');
$container.append(el);

然后您可以访问'el'。

答案 1 :(得分:58)

这是我最喜欢的方式:

var $selectors = $('<div class="selectors"></div>').appendTo(container);

答案 2 :(得分:5)

$selectors = $('<div/>').addClass('selectors').appendTo($container);

答案 3 :(得分:2)

您还可以创建一个新的jQuery函数来执行此操作:

jQuery.fn.addChild = function(html) 
{                               
    var target  = $(this[0])                            
    var child = $(html);                                                      
    child.appendTo(target);                                                   
    return child;                                                             
};  

然后像这样使用它:

$('<ul>').addChild('<li>hi</li>');

当然,如果你想添加多个项目:

var list = $('<ul>');
list.addChild('<li>item 1</li>');
list.addChild('<li>item 2</li>');

这样的方法的优点是,如果您愿意,以后可以添加更多“addChild”功能。请注意,对于上述两个示例,您需要将元素添加到文档中,因此完整示例可能是:

$('body').addChild('<ul>').addChild('<li>hi</li>');