javascript - 如何在编辑器中输入文字?
问题描述
我遇到了这个奇怪的问题,似乎无法弄清楚。基本上,我只想允许用户在编辑器中输入最多40 个字符,如果用户输入超过40 个字符,只需停止它们。那部分效果很好。但是,在输入 41 个字符后,CK Editor 似乎冻结了,我根本无法删除/添加更多字符。谁能告诉我我做错了什么?提前非常感谢!
CKEDITOR.on('instanceReady', function(evt) {
evt.editor.on('key', function(event){
if(evt.editor.getData().length > 40){
return false;
}
});
解决方案
也许你正在寻找的东西
CKEDITOR.instances.foo.on('key',function(event){
var deleteKey = 46;
var backspaceKey = 8;
var keyCode = event.data.keyCode;
if (keyCode === deleteKey || keyCode === backspaceKey)
return true;
else
{
var textLimit = 40;
var str = CKEDITOR.instances.foo.getData();
if (str.length >= textLimit)
return false;
}
});
您需要允许删除键码
推荐阅读
- r - R ifelse:查找是否有任何列满足条件
- google-apps-script - 从 Google 表格发送短信,错误:没有收件人
- node.js - 如何在 HBS 模板中仅打印当前用户
- sql - 如何从具有重复值的列表中获取最新的 Date 和 TotalEnrollments
- python-3.x - 抗锯齿;如何正确插入对角线?
- delphi - Corel Paradox ODBC 驱动程序
- google-apps-script - Apps 脚本 - UrlFetchApp.fetch {url, method: "GET"} 到 gzip 失败,代码为 406
- android - 锁屏中的前台服务通知
- reactjs - debounce react-jsonschema-form 验证函数
- python - str.split 错误列必须与键长度相同,多列