Подключил CkEditor, отключилась вставка в текстарию.
Привет.
Сделал раньше для текстарии вставку в нее токенов, а сейчас понадобился для нее ckeditor и такая вставка перестала работать. Может кто встречал как настроить ckeditor чтобы он сек эти вещи? Вот набросал: https://jsfiddle.net/e7646e3a/ <div> <button id="insert"> Вставить токен </button> <button id="ckeditor"> Включить ckeditor </button> <button id="ckeditordel"> Выключить ckeditor </button> </div> <div> <textarea id="textarea1" rows="10" cols="50"> первая строка вторая строка </textarea> </div>
jQuery.fn.extend({
insertAtCaret: function(myValue){
return this.each(function(i) {
if (document.selection) {
//For browsers like Internet Explorer
this.focus();
var sel = document.selection.createRange();
sel.text = myValue;
this.focus();
}
else if (this.selectionStart || this.selectionStart == '0') {
//For browsers like Firefox and Webkit based
var startPos = this.selectionStart;
var endPos = this.selectionEnd;
var scrollTop = this.scrollTop;
this.value = this.value.substring(0, startPos)+myValue+this.value.substring(endPos,this.value.length);
this.focus();
this.selectionStart = startPos + myValue.length;
this.selectionEnd = startPos + myValue.length;
this.scrollTop = scrollTop;
} else {
this.value += myValue;
this.focus();
}
});
}
});
CKEDITOR.env.isCompatible = true;
$(document).ready(function(){
var editor = null;
$('#insert').click(function(){
$('#textarea1').insertAtCaret(' [[INSERT]] ');
});
$('#ckeditor').click(function(){
editor = CKEDITOR.replace('textarea1');
});
$('#ckeditordel').click(function(){
if (editor) {
editor.destroy();
editor = null;
}
});
});
|
if (editor != null) {
editor.insertText(' [[INSERT]] ');
} else {
$('#textarea1').insertAtCaret(' [[INSERT]] ');
}
Это нужно ? |
я первоначально думал не завязываться на каком то определенном редакторе (editor.insertText), чтобы можно было подключить любой, но думаю придется через какую то обертку сечь что за редактор сейчас отрабатывает на текстарии в которую вставляется код.
|
А не знаете, вот на этом же примере, если выключать/включать ckeditor то каждый раз у меня(firefox 45.0.2) добавляет вначале еще одну
<!-- cke-content-start --> и таким оно в базу и сохраняет. Как бы это убрать? |
| Часовой пояс GMT +3, время: 21:47. |