Czy istnieje łatwiejszy / szybszy sposób na dodanie elementu za pomocą jQuery append:
Jak zdobyć element $ selectors:
$container.append('<div class="selectors"></div>');
var $selectors = $('.selectors', $container);
Próbowałem:
var $selectors = $container.append('<div class="selectors"></div>');
ale to sprawia, że $ selectors = $ container
Może to najszybszy / najlepszy sposób. Tylko sprawdzam.
jquery
css-selectors
append
slolife
źródło
źródło
$container
w tym przypadku będzie wiele elementów? W moim przypadku chcę dodać coś do wszystkich instancji, a selektor pasuje i otrzymać kolekcję utworzonych elementów.$container
jsfiddle.net/onL028ty .appendTo
Zamiast tego użyj sztuczki jsfiddle.net/6nmdh84eTo mój ulubiony sposób:
var $selectors = $('<div class="selectors"></div>').appendTo(container);
źródło
$selectors = $('<div/>').addClass('selectors').appendTo($container);
źródło
Możesz również utworzyć nową funkcję jQuery, aby to zrobić:
jQuery.fn.addChild = function(html) { var target = $(this[0]) var child = $(html); child.appendTo(target); return child; };
a następnie użyj go w ten sposób:
$('<ul>').addChild('<li>hi</li>');
oczywiście, jeśli chcesz dodać więcej niż jedną pozycję:
var list = $('<ul>'); list.addChild('<li>item 1</li>'); list.addChild('<li>item 2</li>');
Zaletą takich podejść jest to, że później możesz dodać więcej do funkcji „addChild”, jeśli chcesz. Zwróć uwagę, że w przypadku obu powyższych przykładów musisz dodać element do dokumentu, więc pełny przykład może wyglądać tak:
$('body').addChild('<ul>').addChild('<li>hi</li>');
źródło