나는 tinymce에 대한 이미지 업로드를 처리 할 플러그인을 만들었습니다. 이것은 모두 잘 작동합니다. 내가 할 수 있기를 원하는 것은 사용자가 삭제 한 경우 서버에서 이미지를 제거하여 orphanged 파일로 끝내지 않도록하는 것입니다.tinymce 삭제시 이미지 세부 정보 얻기
내가 TinyMCE에 초기화
<script src="//tinymce.cachefly.net/4.0/tinymce.min.js"></script>
<script type="text/javascript">
tinymce.init({
selector: "textarea",
plugins: "autoresize",
toolbar: "insertfile undo redo | styleselect | bold italic | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent | link image jbimages",
relative_urls: false,
setup : function(ed) {
ed.on("NodeChange", function(e) {
console.log('change event', e);
});
}
});</script>
이 나에게 내가 콘솔에서 볼 수있는 이벤트를 제공의 설정 부분을 사용하여 nodechange의 envent을 수신 할 수 있었다,하지만 난의 방법을 찾을 수 없습니다 img 제거가 수행되었음을 알리는 이벤트에서 뭔가를 얻음으로써 서버에서 이미지를 삭제할 수 있습니다.
나는 당신이 당신의 콘솔을로드하고 당신이 무슨 뜻인지 볼 이미지를 삭제하면이 여기 HERE
의 바이올린을 만들 수 있습니다. 제가 누락 된 이벤트의 속성이나 메소드가 있습니까? 사전
흥미 롭군요. 여러 요소가있는 Ctrl + A를 사용하면 어떻게됩니까? img 's와 p 's를 말하고 삭제 하시겠습니까? – Chinmay
좋은 지적. 간단히 말해서, 그렇지 않습니다. 나는 Ctrl + A를 시도하고 "selectedNode"는 TinyMCE IFrame의 "body"태그입니다. 선택된 노드의 자식 노드 (이미지가 아닌 경우)를 재귀 적으로 반복하고 처리하기 위해 모든 이미지를 선택하면이 방법을보다 강력하게 만들어야합니다. 하나 이상의 이미지가 포함 된 노드를 삭제할 수있는 다른 경우가있을 것이라 확신합니다. 내가 볼 수있는 한, 두 개 이상의 노드를 선택할 수 없습니다 (Ctrl 키를 누른 채 마우스를 클릭하여 강조 표시 한 것입니다) – JohnB
예. 내가 한 일은 내 구현에 매우 특정한 것이었다. 내 이미지를 URL에 연결했는데 (어쨌든 데이터베이스에 연결 고리를 유지해야한다). 서버는 제출시 html에있는 이미지를 제외한 모든 이미지를 제거합니다. – Chinmay