您的标记无效。元素将<div>
被踢出<p>
.
更正标记后,您可以执行以下操作:
var els = $('.p');
do {
els.contents().each(function(i,el) {
if( el.nodeType === 3 && $.trim( el.data ) === '>' ) {
el.parentNode.removeChild(el.previousSibling);
el.parentNode.removeChild(el);
}
});
} while( ( els = els.children() ).length )
JSFIDDLE 演示
或者使用更多的 jQuery:
var els = $('.p');
do {
els.contents().each(function(i,el) {
if( el.nodeType === 3 && $.trim( el.data ) === '>' ) {
$(el.previousSibling).remove();
$(el).remove();
}
});
} while( ( els = els.children() ).length )
JSFIDDLE 演示
或这个:
var els = $('.p');
do {
els.contents().each(function(i,el) {
if( el.nodeType === 3 && $.trim( el.data ) === '>' ) {
$(el.previousSibling).add(el).remove();
}
});
} while( ( els = els.children() ).length )
JSFIDDLE 演示