Angular.js去除页面中显示的空行方法示例

一段路旁,地瓜叶正茂密地延伸着手脚,棱角分明的叶子颇有生趣,纵横交错的长藤生长着密密匝匝的叶子,团团簇簇地拥挤在一起,生机勃勃。绿色在膨胀,触目不由得一阵舒服,在感叹大自然植物的神奇与美妙里,也感谢阳光的无私赠与。

一、前提

在开始本文之前先设定,从server取下来的内容是一个html格式 的内容,那么如下显示:

<div class="article-view-content col-md-12 col-sm-12 col-xs-12 no-padding-left no-padding-right wiki"
  ng-bind-html="vm.article.content | ArticlesTrim">
</div>

二、过滤器

现在要做的事情就是做一个过滤器就好了,让他来去掉content里面的空行

angular
 .module('articles')
 .filter('ArticlesTrim', ArticlesTrim)

ArticlesTrim.$inject = [];
function ArticlesTrim() {
 return function (htmlContent) {
 var re = /<p><br\/><\/p>|<p><br><\/p>|<p>\s<\/p>/g;
 var trimLFCR = htmlContent.replace(re, '');
 return trimLFCR;
 }
}

这里要注意:正则表达式的编写,我这里去掉是三种:

<p><br/></p>
<p><br></p>
<p>\s<\/p>

这里regexp的写法,其实就是/xxx/g最后的g表示全部匹配,如果用gi则表示大小写严格。然后,里面/需转义,所以:

<p><br/></p>

转义之后是:

<p><br\/><\/p>

三、正则表达式其他写法

ArticlesTrim.$inject = [];
function ArticlesTrim() {
 return function (htmlContent) {
 var regex = new RegExp('<p><br/></p>', 'g'); 
 var trimLFCR = htmlContent.replace(regex, '');
 regex = new RegExp('<p><br></p>', 'g');
 trimLFCR = trimLFCR.replace(regex, '');
 return trimLFCR;
 }
}

每一种需要处理的情况,就做一个RegExp来完成。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对的支持。

您可能有感兴趣的文章
AngularJS tab栏实现和mvc小案例实例详解

Angular中innerHTML标签的样式不起作用的原因解析

angular使用md5,CryptoJS des加密的方法

Angular请求防抖处理第一次请求失效问题

angular多语言配置详解