使用ng-bind-html

时间:2016-07-12 11:16:23

标签: javascript html angularjs dom blogs

我有一个载有完美帖子的帖子,每个帖子的全部内容。 html post内容是数据库列中的字符串。现在我想在我想要的位置创建一个更多的链接,并且只在列表中显示一个帖子预览(html内容的一部分)。为了实现这一点,我在帖子中写了一条评论,这就是为了预览而剪切内容的重点。

如何在加载ng-bind-html之前操作内容?我需要检测第一个注释并清理内容html文档。我正在jquery进行测试,但我想知道如何以有角度的方式进行测试。

我认为ng-bind-html表达式中的过滤器可以完成这项工作。但我现在不知道如何操纵过滤器内的html字符串。像jquery语法一样操作,因为我需要删除大量标签并做一些事情。

<script>
    $(function() {
        var com = $("*")
           .contents()
           .filter(function(){ return this.nodeType == 8;})
           .first();
        com.nextAll().remove();
    });
</script>

由于

1 个答案:

答案 0 :(得分:0)

您可以添加将在ng-bind-html期间执行的功能,并使用清理服务$sce访问您的字符串。请参阅$sanitise服务上的details

ng-bind-html内,您可以使用jqlite和本机javascript(使用$document包装器)操作DOM。如果操作过于复杂,我会直接使用jquery。要做到这一点,您必须在index.html中include it before angular使用angular.element代替$