2017-05-11 5 views
0

그래서이 코드는 iframe과 문서에 링크가 없으면 삽입하고, 링크가 있으면 링크 만 삽입합니다. 문제는이 다음과 같이 구조가 보이는 있도록 사용자 정의 DIV 내에서 할 필요가 있다는 것입니다 :summernote 편집기에서 div에 div를 추가하는 방법

<div class="page-reference"> 
    <iframe src="http://www.myiframe.com/1" height="400" id="pageReferenceIframe"></iframe> 
    <div class=""> 
    <a href="http://www.myiframe.com/1" class="page-reference-link">ref1</a> 
    </div> 
    <div class="page-reference-active"> 
    <a href="http://www.myiframe.com/2" class="page-reference-link">ref2</a> 
    </div> 
    <div> 
    <a href="http://www.myiframe.com/3" class="page-reference-link">ref3</a> 
    </div> 
</div> 

내가 그래서 관리자가 새 링크를 만들 수 summernote 편집기를 사용하여이를 달성하는 데 필요한 그리고 그것은의 SRC 변경 iframe 링크를 클릭하면 해당 부분이 작동합니다. 작동하지 않는 것은 다음과 같습니다.

addReference(reference) { 
    let hasReferences = /class=\"page-reference\"/.test(this.currentPage().text); 
    if (hasReferences) { 
     let pageReference = document.getElementsByClassName('page-reference')[0]; 
     pageReference.appendChild(this.createPageReferenceLink(reference)); 
    } else { 
     let div = document.createElement('div'); 
     div.classList = 'page-reference'; 
     let iframe = this.createIframe({ site: reference.site, height: 400, width: 80 }); 
     iframe.id = 'pageReferenceIframe'; 
     div.appendChild(iframe); 
     let link = this.createPageReferenceLink(reference); 
     link.classList = 'page-reference-active'; 
     div.appendChild(link); 

     this.insertSummernoteNode(div); 
    } 
} 

이 코드는 페이지를 한 번로드 한 다음 페이지가 다시로드 될 때까지 작동하지 않습니다. 코드가 디버거를 각 행에 넣음으로써 코드가 실행되고있는 것을 확인했지만 트리거가 발생했지만 pageReference.appendChild(this.createPageReferenceLink(reference));은 첫 번째 시도 후에 생성 된 요소를 추가하지 않습니다. 특정 위치에 삽입 할 수 없기 때문에 summernote 메서드 insertNode을 사용할 수 있다고 생각하지 않습니다. 나는 이것에 붙어있어 어떤 도움을 크게 주시면 감사하겠습니다.

답변

0

summernote 편집기에서 페이지에 표시되는 계산 된 html이 없거나 추가 할 div가 무엇인지 혼동 될 수 있는지 확인하십시오