我试图加粗数组中每个项目的前四个字符(在本例中是一个列表),但我知道该怎么做才是选择整个字符串:
$("li").slice(0).css("font-weight", "Bold");
如何指定我想要切片的每个字符串中的哪一个?
答案 0 :(得分:0)
$('li').each(function() {
var $li = $(this);
var txt = $li.text();
$li.text(txt.substring(4));
$li.prepend($('<b/>').text(txt.substring(0,4)));
});
迭代每个<li>
标记,并用包含前四个字符的粗体标记替换内部文本,然后替换剩余的原始文本。
您可以将<b>
切换为<span>
,以便更好地控制样式。如果您需要在每个列表项中保留其他标记,也可以尝试使用.html()
。
答案 1 :(得分:0)
以下是一个可以帮助您的示例:
$("li").each(function() {
var len = $(this).text().length,
text1 = $(this).text().slice(0, 4),
text2 = $(this).text().slice(5, len);
$(this).html('<b style="color:red">' + text1 + '</b>' + text2);
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul>
<li>how-to-slice</li>
<li>specific</li>
<li>characters</li>
<li>in-every</li>
<li>item-of-an-array</li>
</ul>