我试图从jquery-te-1.4.0转移到CKeditor(内联)和JS的新手
jquery-te的原始代码是:
var stopBlur = false;
a.html("<textarea "+title+"name=\"textarea\" id=\""+ a.attr('id') +"_field\">" + a.html() + "</textarea>");
editor = a.find('textarea');
editor.jqte({focus: function(){stopBlur=true;setTimeout(function(){stopBlur=false;},200);},blur: function(){setTimeout(function(){if(stopBlur)return;fieldSave(a.attr('id'),a.find('div.jqte_editor').html());},50)}});
$('div.jqte_tool').click(function(){
stopBlur = true;
setTimeout(function(){stopBlur = false;},200);
a.find('div.jqte_editor').focus();
});
a.find('div.jqte_editor').focus();
我当前的(非功能性)代码是:
var stopBlur = false;
a.html("<div "+title+"name=\"div\" id=\""+ a.attr('id') +"_field\" class=\"editable\" contenteditable=\"true\">" + a.html() + "</div>");
editor = a.find('div');
editor.ckeditor({focus: function(){stopBlur=true;setTimeout(function(){stopBlur=false;},200);},blur: function(){setTimeout(function(){if(stopBlur)return;fieldSave(a.attr('id'),a.find(div.ckeditor).html());},50)}});
$('div.ckeditor').click(function(){
stopBlur = true;
setTimeout(function(){stopBlur = false;},200);
a.find('div.ckeditor').focus();
});
a.find('div.ckeditor').focus();
正如我所说:我的JS技能非常差,我不知道如何在停止使用等时获得CK保存等等。 帮助将更加渺茫......
答案 0 :(得分:0)
我取得了一些进展:
var stopBlur = false;
a.html("<textarea "+title+"name=\"textarea\" id=\""+ a.attr('id') +"_field\" class=\"editable\" contenteditable=\"true\">" + a.html() + "</textarea>");
editor = a.find('textarea');
editor.ckeditor({focus: function(){stopBlur=true;setTimeout(function(){stopBlur=false;},200);},blur: function(){setTimeout(function(){if(stopBlur)return;fieldSave(a.attr('id'),a.find(div.ckeditor).html());},50)}});
$('div.ckeditor_tool').click(function(){
stopBlur = true;
setTimeout(function(){stopBlur = false;},200);
a.find('div.ckeditor').focus();
});
a.find('div.ckeditor').focus();
CKEDITOR.disableAutoInline = false;
var editor = CKEDITOR.inline( a.attr('id') );
但是 - 编辑器在点击右侧区域时出现,但在失去焦点时不会消失,或保存数据......