【发布时间】:2009-04-02 22:35:59
【问题描述】:
我需要使用 Javascript 来做三件事:
- 选择所有具有“foo”类的节点。
- 在这些节点中查找所有以“*”开头的单词。
- 用
<span class="xyz"> ... </span>将这些词括起来,其中xyz是词本身。
例如内容:
<ul>
<li class="foo">
*abc def *ghi
</li>
<li class="bar">
abc *def *ghi
</li>
</ul>
会变成
<ul>
<li class="foo">
<span class="abc">*abc</span> def <span class="ghi">*ghi</span>
</li>
<li class="bar">
abc *def *ghi <!-- Not part of a node with class "foo", so
</li> no changes made. -->
</ul>
我该怎么做?(附注:涉及 jQuery 的解决方案也可以工作,但除此之外,我不希望包含任何额外的依赖项。)
【问题讨论】:
-
使用任何库? (例如原型、jquery 等)?
-
是的! jQuery 很好。我修改了问题以反映这一点。
-
@Unknown Entity,你能 100% 确定只有单词会出现在 'foo' 元素中吗?没有额外的 HTML 标签隐藏在里面吗?另外,'foo' 是否总是一个
- 元素,或者它可以是
或还是别的什么?
- 元素,或者它可以是
标签: javascript jquery html regex