[英]checkSound() Function and Express interfering
我目前在global.js文件中设置了一个函数,该函数可以启动歌曲并在按下4键时将其暂停。 但是,当我实现此功能时,它将导致我的路由停止工作。 因此,在我的mainMenu.js文件中,当您按1键时,它应该带您到game.html,但什么也没有发生。 我不确定是什么造成了这种干扰。 关于如何阻止这种情况发生的任何想法
global.js:
window.onload = function(){
}
//music
var audio = new Audio('/music/oregonMusic.mp3')
function checkSound(){
audio.play();
document.onkeypress = function(e){
if(audio.paused){
audio.play();
}
else if(!audio.paused && e.keyCode === 52){
audio.pause();
}
}
}
checkSound();
mainMenu.js:
window.onload = function(){
//console.log('swing');
checkSound();
}
document.onkeypress = function(e){
//console.log('key pressed: ' + e.keyCode)
if(e.keyCode === 49){
window.location = 'game'
}
else if(e.keyCode === 51){
window.location = "topTen"
}
}
使用
document.onkeypress = function(e) { ... }; // 1
document.onkeypress = function(e) { ... }; // 2
结果仅在按键上调用// 2
相反,您应该使用addEventListener
因此, global.js
document.addEventListener('keypress', function(e) {
if(audio.paused){
audio.play();
}
else if(!audio.paused && e.keyCode === 52){
audio.pause();
}
});
和mainMenu.js
document.addEventListener('keypress', function(e) {
if(e.keyCode === 49){
window.location = 'game'
}
else if(e.keyCode === 51){
window.location = "topTen"
}
});
现在两个处理程序都将被调用
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.