javascript - js怎么获取textarea自动换行行数?
问题描述
要在textarea中输入内容,默认为一行,当输入的内容过多时自动换行,并且高度增加?
问题解答
回答1:1, 用shadow
<p style='height:0; overflow:hidden;'> <p class='shadow'></p></p><textarea style='overflow:hidden;'></textarea><script> textarea.addEventListener(’input’, function(e) {shadow.innerHTML = this.value.replace(/</g, ’<’).replace(/>/g, ’>’);this.height = shadow.clientHeight + ’px’; });</script>
2, 用 contenteditable 属性
<p contenteditable='true'>这里的高度会随内容自动扩展</p>
3, 如果用
textarea.style.height = textarea.scrollHeight + ’px’;
这种形式也可以调整高度, 但换行的时候会有滚动条一闪而逝, 而且高度只会增加没法减少, 是体验最差的写法.
回答2:给textarea一个oninput事件
<textarea id='text'></textarea>document.getElementById(’text’).style.height = document.getElementById(’text’).scrollHeight + ’px’
类似这样的
回答3:http://stackoverflow.com/ques...
回答4:textarea的总高度(用jQ的element.height(),如果是原生js,请查看手册的BIF)/ 你定义的行高
相关文章:
1. 如何判断数据库的库和表是否存在?2. javascript - vue-router怎么不能实现跳转呢3. 求救一下,用新版的phpstudy,数据库过段时间会消失是什么情况?4. html5 - vue SPA 项目如果组件过多,岂不是打包的文件太大5. css - chrome下a标签嵌套img 显示会多个小箭头?6. javascript - H5 audio 标签 如何实现音乐播放在 跨页面 的时候是连续播放的(不重新开始)7. python - 字符串里的u’u00a1’怎么打印成中文8. 求解改变某值9. MySQl 管理不了数据库,要怎么解决10. javascript - 关于js原生事件的绑定与解除绑定

网公网安备