我正在使用计时器进行此游戏,并且当用户更改可见性时,我使用此事件监听器,并且它警告用户不要离开选项卡。问题是,它可以在启动游戏的按钮被单击之前起作用。 JS中是否有一种方法可以阻止事件侦听器监听,直到单击按钮为止?我试图循环一个remove eventlistener并在单击按钮时停止循环功能,尽管它没有用。谢谢。
<!--This is the button that I want to start the eventlistener-->
<button onclick="start1game()" id="startgame">Continue</button>
<script>
document.addEventListener("visibilitychange", function() {
alert('Please do not leave while playing the game.');
});
</script>
答案 0 :(得分:0)
我不确定start1game()
函数的声明,但是如果您移动了
document.addEventListener("visibilitychange", function() {
alert('Please do not leave while playing the game.');
});
在您的start1game()
函数声明中(作为第一行),直到按下该按钮,监听器才会被激活。如果这样做不能解决您的问题,我建议您对问题进行编辑以包含更多代码,但是请记住,我们需要理解这些问题的最少量代码。