javascript是否以不同方式对待它们:'vs`?

时间:2017-06-21 18:35:28

标签: javascript

刚开始在HTML中使用数据属性,我试图根据某个键选择一个音频元素。 (仅供参考,这些键映射到主行上的键。)

澄清一下,麻烦与音频无关或让它发挥作用。

我发现,使用此代码时,行为会有所不同,具体取决于我是否正在使用

`

'

根据我使用的是哪一个,控制台的输出存在差异。代码如下:

<audio data-key="65" src="sounds/clap.wav"></audio>
<audio data-key="83" src="sounds/hihat.wav"></audio>
<audio data-key="68" src="sounds/kick.wav"></audio>
<audio data-key="70" src="sounds/openhat.wav"></audio>
<audio data-key="71" src="sounds/boom.wav"></audio>
<audio data-key="72" src="sounds/ride.wav"></audio>
<audio data-key="74" src="sounds/snare.wav"></audio>
<audio data-key="75" src="sounds/tom.wav"></audio>
<audio data-key="76" src="sounds/tink.wav"></audio>
<script>
window.addEventListener('keydown', function(e) {
var audio = document.querySelector(`audio[data-key="${e.keyCode}"]`); //Works
    audio = document.querySelector('audio[data-key="${e.keyCode}"]'); //Doesnt Work
console.log(audio);
});
</script>

当我删除第二个赋值语句时,控制台会向我显示已选择该元素。当我点击'a'时控制台显示:

<audio data-key="65" src="sounds/clap.wav"></audio>

但是,当我离开第二个赋值语句或使用它声明音频时,控制台显示“null”表示按下任何键。

为什么会这样?为什么JavaScript更喜欢'到'? (更多信息:我正在使用带有谷歌Chrome浏览器的Mac来查看控制台,我正在使用SublimeText进行编辑)

0 个答案:

没有答案