Javascript 设置数组的某些值的样式

Javascript 设置数组的某些值的样式,javascript,html,css,arrays,Javascript,Html,Css,Arrays,我有一系列的名字,其中一些会被重复。这些名称随后分成两半,然后输出到li。 我想要的和不能弄明白的是,假设我想要名字joyec有样式文本装饰:行通过出现在所有打印有joyc的.book上。下面是我的代码和一把小提琴: <div id="book1" class="book"> <ul class="hardcover_front"> <li></li> <li></li>

我有一系列的名字,其中一些会被重复。这些名称随后分成两半,然后输出到
li
。 我想要的和不能弄明白的是,假设我想要名字
joyec
有样式
文本装饰:行通过出现在所有打印有
joyc
.book
上。下面是我的代码和一把小提琴:

 <div id="book1" class="book">
       <ul class="hardcover_front">
        <li></li>
        <li></li>
      </ul>
       <ul class="hardcover_back">
        <li></li>
        <li></li>
      </ul>
       <ul class="book_spine">
      </ul>
     </div>
    <div id="book2" class="book">
       <ul class="hardcover_front">
        <li></li>
        <li></li>
      </ul>
       <ul class="hardcover_back">
        <li></li>
        <li></li>
      </ul>
       <ul class="book_spine">
      </ul>
     </div>
    <div id="book3" class="book">
       <ul class="hardcover_front">
        <li></li>
        <li></li>
      </ul>
       <ul class="hardcover_back">
        <li></li>
        <li></li>
      </ul>
       <ul class="book_spine">
      </ul>
     </div>
    <div id="book4" class="book">
       <ul class="hardcover_front">
        <li></li>
        <li></li>
      </ul>
       <ul class="hardcover_back">
        <li></li>
        <li></li>
      </ul>
       <ul class="book_spine">
      </ul>
     </div>
    <div id="book5" class="book">
       <ul class="hardcover_front">
        <li></li>
        <li></li>
      </ul>
       <ul class="hardcover_back">
        <li></li>
        <li></li>
      </ul>
       <ul class="book_spine">
      </ul>
     </div>
    <div id="book6" class="book">
       <ul class="hardcover_front">
        <li></li>
        <li></li>
      </ul>
       <ul class="hardcover_back">
        <li></li>
        <li></li>
      </ul>
       <ul class="book_spine">
      </ul>
     </div>
      <div id="book7" class="book">
       <ul class="hardcover_front">
        <li></li>
        <li></li>
      </ul>
       <ul class="hardcover_back">
        <li></li>
        <li></li>
      </ul>
       <ul class="book_spine">
      </ul>
     </div>
      <div id="book8" class="book">
       <ul class="hardcover_front">
        <li></li>
        <li></li>
      </ul>
       <ul class="hardcover_back">
        <li></li>
        <li></li>
      </ul>
       <ul class="book_spine">
      </ul>
     </div>
      <div id="book9" class="book">
       <ul class="hardcover_front">
        <li></li>
        <li></li>
      </ul>
       <ul class="hardcover_back">
        <li></li>
        <li></li>
      </ul>
       <ul class="book_spine">
      </ul>
     </div>
      <div id="book10" class="book">
       <ul class="hardcover_front">
        <li></li>
        <li></li>
      </ul>
       <ul class="hardcover_back">
        <li></li>
        <li></li>
      </ul>
       <ul class="book_spine">
      </ul>
     </div>


<script>
var votenames = ["Joeyc", "JakeP97", "Joeyc", "TheKid", "Joeyc", "TheKid", "Joeyc", "JakeP97", "ExploreMeDora", "Alvaro"];
var ballots = ["#book1", "#book2", "#book3", "#book4", "#book5", "#book6", "#book7", "#book8", "#book9", "#book10"];

function splitName(plName,ballotNum) {
    var halfplName = Math.round(plName.length / 2);
    var firstplName = plName.substr(0, halfplName);
    var lastplName = plName.substr(halfplName, plName.length);
    $(ballotNum + ' ul.hardcover_front').find('li:nth-child(2)').html(firstplName);
    $(ballotNum + ' ul.hardcover_back').find('li:nth-child(1)').html(lastplName);
}

for (i=0; i<ballots.length; i++) {
    splitName(votenames[i],ballots[i]);
}
</script> 

var votenames=[“乔伊奇”、“杰克97”、“乔伊奇”、“TheKid”、“乔伊奇”、“TheKid”、“乔伊奇”、“杰克97”、“ExploreMeDora”、“Alvaro”]; var选票=[“#book1”、“#book2”、“#book3”、“#book4”、“#book5”、“#book6”、“#book7”、“#book8”、“#book9”、“#book10”]; 函数splitName(plName,ballotNum){ var halfplName=Math.round(plName.length/2); var firstplName=plName.substr(0,半plName); var lastplName=plName.substr(半plName,plName.length); $(ballotNum+'ul.hardcover_front').find('li:nth child(2)').html(firstplName); $(ballotNum+'ul.hardcover_back').find('li:nth child(1)').html(lastplName); }
对于(i=0;iCSS选择器不能基于内容选择元素,但是使用jQuery选择器可以做到这一点:

$('li:contains(“two”)).css(“文本装饰”,“行通过”);

  • 一个

  • 两个
  • CSS选择器无法基于内容选择元素,但使用jQuery选择器可以做到这一点:

    $('li:contains(“two”)).css(“文本装饰”,“行通过”);
    
    
  • 一个

  • 两个
  • 您可以放置一个
    if
    条件并搜索包含所需字符串的任何
  • 之后,您可以使用:

    document.getElementById("myelement").classList.add("myclass");
    

    然后添加您选择的css类。

    您可以放置
    if
    条件并搜索包含所需字符串的任何
  • 之后,您可以使用:

    document.getElementById("myelement").classList.add("myclass");
    
    然后添加您选择的css类