脚本的角度<div>颜色更改

时间:2019-06-01 18:24:21

标签: javascript html angular typescript

im在有角度的6上工作。im单击功能后,需要从脚本中更改div标签的颜色,我需要将其更改回透明

当我单击继承时,这是我的视图。第一行获取背景色更改

单击继承后,当我单击“方法”时,替代第二行会突出显示 但是我需要从第一行中删除背景色

enter image description here

侧栏的HTML代码

  <div *ngFor="let classes of classesObject ">
    <input id='{{classes}}' name='radio' type='radio'>
    <label (click)="clickClass(classes)" for='{{classes}}'>
      {{classes}}
      <div class='lil_arrow'></div>
      <div class='bar'></div>
      <div class='swanky_wrapper__content'>
        <ul *ngFor="let conceptName of concepts">
          <li (click)="getConcepts(conceptName['conceptName'],[classes])">{{conceptName["conceptName"]}}</li>
        </ul>
      </div>
    </label>
  </div>

用于行显示的HTML代码

 <div *ngFor="let lines of lineList; let i= index">
    <div id="line_{{i}}" class="code" >&nbsp;&nbsp;{{lines}}</div>
 </div>

getConcept方法的打字稿代码

  for (var no in this.relatedLineNo) {
    var lines = this.relatedLineNo[no] - 1;
    document.getElementById(`line_` + lines).style.backgroundColor = "black";
    document.getElementById(`line_` + lines).style.color = "white";
    document.getElementById(`line_` + lines).style.cursor = "pointer";
    document.getElementById(`line_` + lines).setAttribute("tooltip", this.messageTip);
  }

1 个答案:

答案 0 :(得分:1)

代替在以下操作中手动查找for循环中的行:

document.getElementById(

尝试更多的Angular-ish方法:

[ngClass]="{ hilite: i === relatedLineNo }"

发生的事情是,在* ngFor循环内,Angular将使用relatedLineNo评估当前行索引“ i”,并将“自动”突出显示该行。

工作stackblitz