在document.querySelector()字段中使用#符号

时间:2019-08-11 20:23:49

标签: javascript html jquery-selectors

我正在使用Javascript和库Tonal.js

开发音乐应用程序

使用Tonal.js,我将获得(例如)美国符号的和弦音符,该音符对应于从A到G的字母。

众所周知,平面音符用 b 符号表示,而尖锐音符用符号表示(例如 Ab G#< / em>)

我已经实现了一个可以正常工作的代码,以便从我的html元素中检索注释:

1)Html

  <div id="pad">
    <ol class="even first">
      <li class='hex C' ><div class="note">C2</div></li>
      <li class='hex G' ><div class="note">G2</div></li>
      <li class='hex Db'><div class="note">Db3</div></li>
      <li class='hex A#'><div class="note">A#3</div></li>
      <li class='hex E' ><div class="note">E4</div></li>
    </ol>  
 </div>

2)javascript

   full_chord = "CMaj7"
   chord_notes = Tonal.Chord.notes(full_chord);//takes a signature of a chord and returns the single notes that compose the chord
   var selected_notes = chord_notes.map(title => document.querySelectorAll("."+title)); //returns the html elements with the chord notes

这很好,直到我通过签名中带有的笔记。 例如:

document.querySelectorAll(".C")); //works
document.querySelectorAll(".Cb")); //works
document.querySelectorAll(".C#")); //error: invalid selector 

是否可以在选择器中使用符号?不幸的是,由于它是一种音乐应用程序,因此我不得不使用它。

0 个答案:

没有答案