Таймер обратного отсчета jquery - сбрасывается при нажатии клавиши

У меня есть таймер обратного отсчета для выхода пользователей из системы (для сайта администратора). Когда пользователь нажимает клавишу, он должен сбрасывать таймер, но он не работает.

Как сбросить таймер?

$(function(){
 
 var perc = 50 // User will be logged out after (minutes)
 var count = perc * 60;
 
 // RESET TIMER
 
$(document).keypress(function(){
    var count = perc * 60;   // PROBLEM
	alert('keypress works');
});  
	
	
 //COUNTDOWN
 
 var counter = setInterval(timer, 1000); 
	function timer() {
		count = count - 1;
		if (count == -1) {
			// LOGOUT //
			return;
		}

		var seconds = count % 60;
		var minutes = Math.floor(count / 60);

		seconds %= 60;
		minutes %= 60;

		document.getElementById("seconds").innerHTML = seconds;
		document.getElementById("minutes").innerHTML = minutes;
		document.getElementById("start_time").innerHTML = inactive;
	 
	};

 });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div id="menu_countdown"><span id="minutes"></span> : <span id="seconds"></span></div>


person Karoly    schedule 12.02.2015    source источник
comment
К вашему сведению, использование setInterval и счетчика не является точным для отслеживания времени.   -  person epascarello    schedule 13.02.2015


Ответы (1)


var привязывает его к закрытию нажатия клавиши

var count = perc * 60;   // PROBLEM 

Вам нужно удалить файл var.

$(document).keypress(function(){
    count = perc * 60;
});
person epascarello    schedule 12.02.2015