2016-07-12 1 views
0

각 게시물의 전체 내용을 완벽하게로드하는 게시물 목록이 있습니다. html 게시물 내용은 데이터베이스 열의 문자열입니다. 이제 원하는 위치에 더 많은 링크를 만들고 싶습니다. 목록에 게시물 미리보기 만 표시합니다 (html 콘텐츠의 일부). 이를 달성하기 위해 게시물 안에 댓글을 달았습니다. 미리보기를 위해 내용을 잘라내는 것이 포인트입니다.ng-bind-html을 사용하여 Angular.js의 블로그 게시물을 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> 

감사

답변

0

당신은 ng-bind-html 동안 실행하는 기능을 추가하고 위생적으로 서비스 $sce를 사용하여 문자열에 대한 액세스를 얻을 수 있습니다. $sanitise 서비스를 참조하십시오.

ng-bind-html 안에 jqlite과 기본 자바 스크립트 ($document 래퍼 사용)를 사용하여 DOM을 조작 할 수 있습니다. 조작이 너무 복잡하면 jquery를 직접 사용합니다. 그렇게하려면 index.html에 include it before angular을 입력하고 $

대신 angular.element을 사용해야합니다.
관련 문제