小编典典

使用jQuery删除HTML元素之间的空格和换行符

javascript

我想使用jQuery,删除HTML标记之间的空格和换行符。

var widgetHTML = '    <div id="widget">        <h2>Widget</h2><p>Hi.</p>        </div>';

应该:

alert(widgetHTML); // <div id="widget"><h2>Widget</h2><p>Hi.</p></div>

我认为我需要的模式是:

>[\s]*<

不使用正则表达式就可以实现吗?


阅读 540

收藏
2020-05-01

共1个答案

小编典典

我尝试了user76888布置的技术,并且效果很好。为了方便起见,我将其打包到jQuery插件中,并认为社区可能会喜欢它,因此在这里:

jQuery.fn.cleanWhitespace = function() {
    this.contents().filter(
        function() { return (this.nodeType == 3 && !/\S/.test(this.nodeValue)); })
        .remove();
    return this;
}

要使用此功能,只需将其包含在脚本标签中,然后选择一个标签以使用jQuery清理并按如下所示调用函数:

$('#widget').cleanWhitespace();
2020-05-01