2013-05-30 6 views
3

У меня возникли такие трудности, когда мне удалось разместить элемент html, который я перетаскиваю в моем Ckeditor. До сих пор я только что смог разместить его в самом конце моего контента с помощью «setData». Но я хочу поместить его в положение, которое я нахожу в своем курсоре.Как разместить элемент html в позиции курсора в Ckeditor?

Я имею в виду, вместо того, чтобы сделать это:

<p>My content with <span>spans</span>, <a>links</a>, etc.</p><span>The html I am drag/droping</span> 

Я хочу, чтобы это сделать:

<p>My content with <span>spans</span>, <span>The html I am drag/droping</span>, <a>links</a>, etc.</p> 

Прямо сейчас, мой код выглядит так:

CKEDITOR.instances['myContent'].insertHtml(' <span>The html I am drag/droping</span>'); 

I попробовали insertText, но он никогда не работал. У меня тогда попытался insertHtml, но он работал только в IE o_O.

У вас есть идеи, как исправить это? Это была бы отличная помощь! Спасибо.

+0

вы уверены, что редактор имеет выбор, когда вы звонили 'insertHtml' Я уверен, что оба метода' 'insertText' и insertHtml' работа при использовании правильно Проверьте этот образец?.: http://ckeditor.com/latest/samples/api.html - «вставить HTML» buttton WFM. – Reinmar

ответ

0

Используйте Cceditor 'paste' (drop) события/методы вместо родных.

Внутри вашего плагина editor.on («instanceReady» ... Предполагая CKEditor 4.x

пасты и капли обрабатываются одним и тем же событием, «вставить». CKEditor помещает содержимое DataValue в позиции курсора . в редакторе

editor.on('paste', function(e){ 
    // get data from e.data.dataTransfer or wherever ... 
    e.data.dataValue = ' <span>The html I am drag/droping</span>'; 
}); 
+0

Ссылка https://github.com/ckeditor/ckeditor-sdk/ блоб/ведущий/образцы/draganddrop.html – hellork