javascript - 这里是soundsArray[i]中的变量“i”,不取任何值
问题描述
这里是soundsArray[i]中的变量“i”,不取任何值,第4行
var soundsArray = ["crash", "kick-bass", "snare", "tom-1", "tom-2", "tom-3", "tom-4"];
for(var i = 0; i<document.querySelectorAll(".drum").length; i++){
document.querySelectorAll(".drum")[i].addEventListener("click", ()=>{
var audio = new Audio(`./sounds/${soundsArray[i]}.mp3`);
audio.play();
});
}
//document.querySelectorAll(".drum").length = 7
解决方案
有点混乱!!但是我更喜欢使用这样的东西:
document.querySelectorAll(".drum").forEach((drm) =>{
drm.addEventListener("click", (e)=>console.log(e.target.value))
})
<button class="drum" value="crash">crash</button>
<button class="drum" value="kick-bass">kick-bass</button>
<button class="drum" value="snare">snare</button>
<button class="drum" value="tom-1">tom-1</button>
<button class="drum" value="tom-2">tom-2</button>
<button class="drum" value="tom-3">tom-3</button>
<button class="drum" value="tom-4">tom-4</button>
推荐阅读
- ios - 使用 VoiceOver 设置 contentOffset 后 UIScrollView didScroll 两次
- bash - Bitbucket rest api 方向参数
- javascript - 带有 v-if 的自定义模板在使用 li 项目时出错 - vue js
- matlab - MATLAB 从微分方程的级数解生成代数方程
- python - Visual Studio Code 中未找到模块错误
- flutter-test - 如何从 Finder 获取 BuildContext?
- linux - Vagrant 共享文件夹不工作/同步
- mongodb - Mongoose 最新记录获取无排序
- google-home - 自定义 google home 操作应始终重新连接以使其正常工作
- ios - .app 在 M1 上的 IOS 模拟器中启动时崩溃