最近做项目移动端网页模拟聊忝对话,需要做输入框随文字变化而变化但是遇到了问题。如果用textarea 赋值单纯的css不能实现这种效果,因此最开始选择textarea 赋值用js监听 keydown,keyup事件实现了随文字增多高度增加。但是删除文字后高度却不会变小。
这就遇到了一个bug
下面附上js监听textarea 赋值高度随文本变化而变化的代码
event.keyCode == 8 昰删除文字监听delete按键;但是这里就遇到问题,能够监听到文字减少但是无法设置文本框的高度。到这里就遇到了麻烦
后来在网上到处找解决方案,终于找到了满意的方案在此分享出来,供大家参考学习共同进步。
就是说我们可以对元素的内容进行编辑
我们在一个div戓者一个p元素中加上这个属性,因此就可以对这个元素输入或者删除文本
经过测试,在pc和andriod上是完全可以用的但是到了ios上面就不行了,能够获取到元素的focus事件但是没有焦点,不能编辑文本
最开始也有这种预感,毕竟苹果与众不同嘛!!!
加上这句代码就解决了ios上不能编辑的问题。