У меня есть следующий код jQuery, который работает, но он заставлял меня задуматься над тем, можно ли было выполнить действие append над тем, что было добавлено, без необходимости указывать, к чему я хочу добавить. append().append()
не выполнял трюк, он просто помещал два элемента рядом друг с другом, а не дочерний элемент первого действия append()
.
Работает:
var container = $('#container'),
child = 'child';
$('#container').append($('<div/>',{
'id' : 'child'
}));
$('#' + child).append($('<a/>', {
'class' : 'close',
'href' : 'javascript:;',
html : 'close',
click : function(e){
e.preventDefault();
$('#' + child).remove();
}
}));
Не работает:
var container = $('#container'),
child = 'child';
$('#container').append($('<div/>',{
'id' : 'child'
})).append($('<a/>', {
'class' : 'close',
'href' : 'javascript:;',
html : 'close',
click : function(e){
e.preventDefault();
$('#' + child).remove();
}
}));