Javascript 如何使eventlistener在单击按钮之前不侦听?
我正在制作这个游戏,有一个计时器,我有一个eventlistener,当用户改变可见性时,它会警告用户不要离开选项卡。问题是,它在启动游戏的按钮被点击之前工作。在JS中是否有方法阻止eventlistener侦听,直到单击按钮?我尝试循环remove eventlistener,并在单击按钮时停止循环函数,尽管它不起作用。谢谢Javascript 如何使eventlistener在单击按钮之前不侦听?,javascript,html,button,tabs,event-listener,Javascript,Html,Button,Tabs,Event Listener,我正在制作这个游戏,有一个计时器,我有一个eventlistener,当用户改变可见性时,它会警告用户不要离开选项卡。问题是,它在启动游戏的按钮被点击之前工作。在JS中是否有方法阻止eventlistener侦听,直到单击按钮?我尝试循环remove eventlistener,并在单击按钮时停止循环函数,尽管它不起作用。谢谢 <!--This is the button that I want to start the eventlistener--> <button onc
<!--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>
继续
document.addEventListener(“visibilitychange”,函数(){
警惕('玩游戏时请不要离开');
});
没有看到start1game()
函数声明,我不能确定,但是如果您移动
document.addEventListener("visibilitychange", function() {
alert('Please do not leave while playing the game.');
});
在您的
start1game()
函数声明(作为第一行)中,在按下按钮之前,侦听器不会被激活。如果这不能解决您的问题,我建议编辑您的问题以包含更多代码,但请记住,我们需要了解问题所需的最少代码。您没有游戏状态对象吗?您似乎可以保持visibilitychange
侦听器连接并查询游戏状态对象,查看游戏是否正在运行,如果没有,则忽略事件。