我在实时编辑HTML textarea时创建了一个建议面板。为了获得{x,y}坐标,我使用了一个隐藏在textarea后面的div。我得到了carret的位置,然后将carret之前的文本和span标签复制到隐藏的div。然后我得到跨度坐标并将其提供给建议面板。
唯一的问题是,当我向textarea添加一个没有空格的长行时,该行在div面板中被切割时被包裹(因此在我添加回车之前,建议面板不再适合放置)。
有没有办法在这两个地方(textarea和div面板)以相同的方式拟合文本?
(我正在使用jQuery)
答案 0 :(得分:5)
为你的DIV设置word-wrap:break-word
样式会强制自动换行,让你的DIV像处理文本框那样处理长文本。
答案 1 :(得分:0)
将overflow:auto
或overflow:scroll
和width: / height:
添加到div
的css中,这会为您提供一个滚动条,用于包装文本并看起来像textarea ,没有边界。你可以给它一个border
样式,使它看起来更像textarea。
像这样:
<div style="overflow:auto;width:150px;height:50px;border:1px solid #CCC;">
Your text goes here
</div>