Если вы пытаетесь просто удалить все пустые элементы P или элементы P только с одним пробелом, то вы можете сделать это:
$('p').map( function(){
var html = $(this).html();
if( !html.length || html == ' ' || html == String.fromCharCode(255) )
return this;
}).remove();
Это повторяет все буквы P на вашей странице и, если они соответствуют определенным критериям (они пусты или имеют только пробел), то удаляет их из DOM.
Кроме того, присвоение нашего HTML-содержимого один раз локальной переменной помогает скрипту работать быстрее. Чтобы найти неразрывные пробелы, я просто сравниваю содержимое со строкой, созданной из кода символа ASCII 255 (который является неразрывным пробелом).
Функция map () jQuery может быть полезна, когда простого фильтра или сравнения атрибутов будет недостаточно.
Подробнее об этом можно прочитать здесь .... http://api.jquery.com/map/