그래서이 코드는 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
을 사용할 수 있다고 생각하지 않습니다. 나는 이것에 붙어있어 어떤 도움을 크게 주시면 감사하겠습니다.