Rxx_Mr
2021-12-31 16:40
采纳率: 100%
浏览 76

JS长文本处理问题 多判断处理

问题遇到的现象和发生背景

如题 一段古诗释义文本 我需要处理成每行22字的段落 而且在遇到\n时需要将其前面的文本单独做成一行并且 需要h:true 的字段高亮处理

问题相关代码,请勿粘贴截图

let data=[
{
t:金杯中的美酒一斗价十千,
h:false
},
{
t:玉盘里的菜肴;,
h:true
},
{
t:珍贵值万钱。\n心中郁闷,我放下杯筷不愿进餐拔出宝剑环顾四周,心里一片茫然。\n想渡黄河,冰雪却冻封了河川;想登太行山,莽莽风雪早已封山。\n像姜尚垂钓溪,闲待东山再起;又像伊尹做梦,他乘船经过日边。\n人生道路多么艰难,多么艰难;歧路纷杂,如今又身在何处?\n相信乘风破浪的时机总会到来,到时定要扬起征帆,横渡沧海!
h:false
}
]

运行结果及报错内容
我的解答思路和尝试过的方法

将其数据中的文字变成长文本 用for循环截取22字段 并用文本长度和高亮字段 分别得到 高亮字段的长度及在长文本中的位置 起始与结束位置 对高亮文字的位置做了很长的判断 但是只实现22截取 与字段高亮效果 \n没有处理
目前效果 文本每行22个字 高亮字段有体现 但文字没有段落效果

我想要达到的结果

文本每行22个字 如果有\n截取\n前文字单独做一行 前提是提取文字小于22字 并且高亮处理

  • 写回答
  • 好问题 提建议
  • 追加酬金
  • 关注问题
  • 邀请回答

4条回答 默认 最新

相关推荐 更多相似问题