Ответ 1
Обновление. Я вижу, вы просто изменили вопрос. Теперь решение будет таким:
var s = '<h1>heading</h1><p>para</p>';
var $s = $(s).not('h1');
$('body').append($s);
Попробуйте: http://jsfiddle.net/q9crX/19/
Поскольку теперь у вас есть более одного элемента верхнего уровня в объекте jQuery, вы можете использовать .not()
(что в основном противоположно .filter()
), чтобы удалить h1
.
Это будет то же самое, что делать $(s).filter(':not(h1)');
Оригинальный ответ
$(s).find('h1').remove();
Итак, если вы добавили результат в body
, вы могли бы сделать:
var s = '<div><h1>heading</h1><p>para</p></div>';
var $s = $(s).find('h1').remove().end();
$('body').append($s);
Попробуйте: http://jsfiddle.net/q9crX/