利用全浏览器都支持的contenteditable模拟文本域可以实现体验相当不错的高度跟随内容自动撑开的效果,但是呢,有个很大的问题就是HTML内容可以直接被粘贴进去,如果我们希望只能输入纯文本,该怎么做呢?本文提供了CSS侧,HTML侧以及JS侧三种不同的解决方法,希望可以对您的学习或者工作有所帮助!
文章关键字 ‘createTextRange’
小tip: 如何让contenteditable元素只能输入纯文本
2016年01月7日,星期四JS Range HTML文档/文字内容选中、库及应用介绍
2011年04月14日,星期四
本文的内容基本上是基于“区域范围对象(Range objects)”这个概念来说的。这个玩意,可以让你选择HTML文档的任意部分,并可以拿这些选择的信息做你想做的事情。其中,最常见的Range是用户用鼠标选择的内容(user selection)。
本文有不少篇幅就是讲如何将用户的这种选择转换为W3C Range或Microsoft Text Range对象。随后展示了Range相关的JavaScript库,以及JS 文本域光标处插入文字的实现——即新浪微博的插入话题功能的完整版实例展示。
本文提供必要的表格数据,源代码展示,效果截图以及demo页面,内容较多,篇幅较长。希望本文的内容能够对您的学习有所帮助。