jQuery - 优雅的方式修剪()文档中的所有元素?

时间:2013-03-25 15:54:02

标签: jquery trim

更多欢乐清理自动生成的HTML。标签中注入了大量无关的空间:

<span>Lorem Ipsum&nbsp;&nbsp;&nbsp;</span> dolor sit...(&amp; nbsp;代表实际的空格,而非实体)

jQuery提供了一个$ .trim()来截断字符串末尾的空格。有没有一种快速而优雅的方法我可以将它应用于每个()循环以从所有内联标签中删除所有空格,或者我注定要选择=&gt;得到html =&gt; trim =&gt;替换HTML?

2 个答案:

答案 0 :(得分:2)

阅读docs

$(selector).html(function(i, old){
    return $.trim(old);
});

Fiddle

答案 1 :(得分:2)

下面的代码将删除没有元素子项的任何节点周围的空白区域。

$('span').filter(function() {
    return $(this).children().length === 0;
}).text(function(_, old) {
    return $.trim(old);
});

对元素子元素的测试可确保您不会错误地修改具有嵌套标记的任何元素,尽管它可能会让您留下比您想要的更多空格。

请参阅http://jsfiddle.net/alnitak/c7aT6/