javascript - 为文本区域内的线条着色

标签 javascript jquery xhtml textarea

有没有办法让textarea显示彩色线条?我想要实现的是每隔一行都着色,即白色,灰色,白色,灰色,白色,灰色......以获得更好的可读性。用户应该写很多东西,例如“输入名称,每个名称从新行开始”。

无论如何,我确实使用 jQuery,所以如果他们为此制定一些更简单的解决方案,那就完美了。

最佳答案

您正在寻找的称为斑马条纹,也许这会对谷歌搜索有所帮助。但是,我认为目前没有办法对文本区域内的文本执行此操作(除了使用背景图像黑客)。

CSS3 有很多强大的功能,例如 nth-child psuedo 类。可能有一种方法可以使用它来做到这一点,但同样,它可能无法在文本区域内做到这一点。

也许另一种解决方案是做类似的事情——您在文本区域中输入文本,然后在它旁边或下面显示一个格式良好的版本。您将使用 jquery 实时解析文本并将其显示为斑马条纹。

编辑:我有另一个想法可能可行,但需要一些实验。可能有一种方法使用 jquery 来获取文本区域中每行文本的绝对位置。我认为你至少可以得到文本区域左上角的绝对位置,得到文本的行高,乘以向下的行数(文本中的换行符数量),稍微测试和调整,然后您应该能够获取文本区域中每一行的位置。然后,使用 jquery 在每行文本的文本区域后面绘制一个彩色 div,该 div 与文本区域一样宽,与文本行一样高。文本区域也应该是透明的。

通过更多的工作,您甚至可以让斑马条纹逻辑足够智能来检测文本行是否已换行,以便斑马条纹可以有 2 行或更多行高。

关于javascript - 为文本区域内的线条着色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1951423/

相关文章:

javascript - 在 Jquery 中删除按钮父容器

javascript - 显示点击返回后HTML显示的最后状态

html - 单个 HTML anchor 标记实际上呈现了两次!截屏

html - X/HTML 有没有竞争性标记语言?

javascript - 返回函数 - 的函数?

javascript - 为什么我的数据绑定(bind)到计算函数不起作用(使用 knockout.js 和 jade)?

javascript - 单击事件处理程序在类更改后不工作

php - 需要有关我的项目的建议!

javascript - 使用连字符引用对象的属性名称

javascript - 仅使用 javascript、HTML 和 CSS 模拟用户登录