【发布时间】:2011-08-25 14:04:50
【问题描述】:
您有解决方案在 Javascript 中使用 HTML 标记对文本进行子字符串处理吗?
例如:
var str = 'Lorem ipsum <a href="#">dolor <strong>sit</strong> amet</a>, consectetur adipiscing elit.'
html_substr(str, 20)
// return Lorem ipsum <a href="#">dolor <strong>si</strong></a>
html_substr(str, 30)
// return Lorem ipsum <a href="#">dolor <strong>sit</strong> amet</a>, co
【问题讨论】:
-
您似乎希望子字符串忽略标签,但在最终结果中保持它们完好无损。我认为您需要将字符串转换为 DOM 元素,遍历元素,计算文本节点中的字符,并删除所有超出计数的字符(或文本节点)。即使这样,我也有一种感觉,浏览器之间在空白方面可能存在一些差异。不过不确定。
-
发布了答案。似乎给出了您想要的结果,但是浏览器之间在空白方面可能存在一些差异。不确定。
-
子字符串 html 代码没有像 [this][1] 那样破坏 html。 [1]:stackoverflow.com/questions/6118904/…
标签: javascript html tags substring