可编辑的div怎么限制字数?

问题描述

做一个聊天工具的编辑器,可以插入图片和文字,我是用一个div,contenteditable设为true,需要将文字限制5000

问题出现的环境背景及自己尝试过哪些方法

试过用keypress和keyup,keydown,但是这些方法的阻止默认事件不能检测到汉字。input能检测到汉字,但是没法阻止输入。如果用替换html值的方法的话,因为编辑器中图文混合,图片需要插入html,文字里的html标签字符以及<img />之类的字符又不能解析成html,所以这个方法也不好实现。

相关代码

// 请把代码文本粘贴到下方(请勿用图片代替代码)

你期待的结果是什么?实际看到的错误信息又是什么?

阅读 3.6k
1 个回答

只是限制汉字和英文字母、字符的总长度?
如果只是这么简单,那么每次input时,触发检测长度的方法,超出长度则不去掉最后一个字符。
判断长度使用 $('#youreditor').val().length, 这个方法一个汉字长度为1

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题