Как вставить изображение в позиции курсора в tinymce - PullRequest
7 голосов
/ 04 марта 2011

Я использую следующие коды для извлечения содержимого tinymce.

tinymce_content=tinyMCE.get('txt_area_id').getContent();
updated_content=tinymce_content+"<img src="sample.jpg">";

Используя вышеприведенные коды, я вставляю изображение в содержимое tinymce.

Вопрос: Как вставить изображение в положение курсора внутри tinymce (то есть) Как предсказать положение курсора и разделить содержимое, чтобы вставить изображение между извлеченным содержимым.

Заранее спасибо

Ответы [ 2 ]

20 голосов
/ 04 марта 2011

Это вставит узел изображения в выбранную точку (позицию курсора) в редакторе tinymce

var ed = tinyMCE.get('txt_area_id');                // get editor instance
var range = ed.selection.getRng();                  // get range
var newNode = ed.getDoc().createElement ( "img" );  // create img node
newNode.src="sample.jpg";                           // add src attribute
range.insertNode(newNode);                          // insert Node
9 голосов
/ 28 сентября 2011

@ Thariama's answer у меня нормально работало в Chrome, но не в IE.Мне пришлось изменить его следующим образом, чтобы он работал в обоих браузерах:

var ed = tinyMCE.get('txt_area_id');                // get editor instance
var newNode = ed.getDoc().createElement ( "img" );  // create img node
newNode.src="sample.jpg";                           // add src attribute
ed.execCommand('mceInsertContent', false, newNode.outerHTML)

(IE говорил мне, что range не имеет insertNode метода.)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...