【问题标题】:Make Portion of String Bold When Creating创建时将字符串的一部分加粗
【发布时间】:2019-12-05 21:59:28
【问题描述】:

我在 div 中动态创建 <p> 元素,具体取决于我的 codeArray 中有多少项目。每次的数量都可能不同,所以我不能只对元素进行硬编码。这是迄今为止我想出的最好的方法:

  for(i=1;i<codeArray.length;i++){
    if(factArray[i] != 0){
      let para = document.createElement('p');
      let node = document.createTextNode(codeArray[i] + " = " + factArray[i]);
      para.appendChild(node);

      let element = document.getElementById('leftModal');
      element.appendChild(para);
    }
  }

我的问题是我希望字符串的第一部分(在“=”之前)是粗体,而后半部分(factArray[i])是正常的字体粗细。有什么办法可以做到吗?

【问题讨论】:

  • 不使用createTextNode 没有。那里只有文字
  • 将字符串的第一部分放在您赋予更高字体权重的元素中...,例如&lt;b&gt;?

标签: javascript html css string


【解决方案1】:

只需将你想要加粗的文本放入你加粗的元素中。 b 元素在浏览器的默认样式表中通常是粗体...

  for(i=1;i<codeArray.length;i++){
    if(factArray[i] != 0){
      let para = document.createElement('p');
      let bold = document.createElement('b');
      let boldNode = document.createTextNode(codeArray[i]);
      bold.appendChild(boldNode);
      para.appendChild(bold);
      let node = document.createTextNode(" = " + factArray[i]);
      para.appendChild(node);

      let element = document.getElementById('leftModal');
      element.appendChild(para);
    }
  }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-05-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-27
    • 2018-06-04
    相关资源
    最近更新 更多