如何在数组的每个项目中切片特定字符

时间:2017-10-27 01:50:18

标签: javascript jquery html css

我试图加粗数组中每个项目的前四个字符(在本例中是一个列表),但我知道该怎么做才是选择整个字符串:

$("li").slice(0).css("font-weight", "Bold");

如何指定我想要切片的每个字符串中的哪一个?

2 个答案:

答案 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>