更改角色的颜色

时间:2012-01-16 14:09:47

标签: jquery colors

我有以下HTML代码:

<p>
<label>* Name</label>
</p>
<p>
<label>* Last Name</label>
</p>
<p>
<label>Mascot Name</label>
</p>

是否可以使用jQuery仅将颜色更改为字符*? 我尝试使用函数find(),但我重复了标签上的所有字符。

4 个答案:

答案 0 :(得分:11)

如果你坚持使用脚本解决方案:

$("p > label:contains('*')").each(function () {
    $(this).html($(this).html().replace("*", "<span class='red'>*</span>"));
});

Demo.

答案 1 :(得分:3)

你应该使用css来实现这一目标。 请改用以下内容

<label><span style="color:red">*</span> Name</label>

这将完成工作。

答案 2 :(得分:0)

我想我会明智地解决它:

label:first-letter {

    color: #ff0000;

}

示例here

答案 3 :(得分:0)

Karim's答案很棒,但在实施时,我注意到它只会在每个

标记中选择一个字符,所以在这种情况下:

<p>
  <label>* Name</label>
  <label>* Last Name</label>
  <label>Mascot Name</label>
</p>
它不会工作。使用&#34;标签:包含(&#39; *&#39;)&#34;替换选择器没问题在这种情况下,但是如果您想要更改该特定字符的每个实例的颜色(或其他属性),该怎么办?所以在这种情况下:

<p>
  * Name<br/>
  * Last Name<br/>
  Mascot Name
</p>

你真的需要别的东西(我知道它看起来并不好,但这是Wordpress的实际输出)。 我发现了这个:Change formatting of a specific character using css or jquery, 哪里有Blazemonger's回答的诀窍!我在这里重复一遍:

$('selector').html(function(i,el) {
  return el.replace(/\*/g, '<span class="color">*</span>');
});​