سؤال

هل هناك أسهل / أسرع طريقة للحصول على عنصر إضافي باستخدام مسج إلحاق:

وكيفية الحصول على العنصر $ محددات:

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

وحاولت:

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

ولكن هذا يجعل $ محددات = $ الحاويات

وربما هذا هو أسرع / أفضل وسيلة. مجرد التدقيق.

هل كانت مفيدة؟

المحلول

لماذا لا فقط:

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

وبعد ذلك لديك حق الوصول إلى "شرم".

نصائح أخرى

وهذه هي طريقتي في القيام بذلك المفضلة:

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

ويمكنك أيضا إنشاء وظيفة جديدة مسج للقيام بذلك:

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>');
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top