키 명령 후에 "mouseactive"를 1 초 미만으로 설정하려고하는데 그 기간 내에 해당 키를 누르면 해당 동작을 취소하고 싶습니다. 그러나 나는 이것을하는 방법을 알아낼 수 없습니다. 이것은 ... 내가 무슨setTimeout 문제 지우기
$(window).keydown(function(e) {
if (e.keyCode == 40) {
e.preventDefault();
mouseactive = false;
clearTimeout(t);
var t = setTimeout("mouseActive()",800);
} else if (e.keyCode == 38) {
e.preventDefault();
mouseactive = false;
clearTimeout(t);
var t = setTimeout("mouseActive()",800);
}
});
function mouseActive() {
mouseactive = true;
}
이다 그러나, 그것은 mouseactive 다시 true로 설정하지 않습니다 작동하지 않습니다 ... 내가 잘못 여기 사람이 말해 줄 수를 뭘하는지?
문자열을'setTimeout'에 넘겨서는 안됩니다. 함수를 전달해야합니다. 문자열이 전달 될 때'eval'을 사용합니다. 't = setTimeout (mouseActive, 800);' –
@Rocket mm .. 나는 방금 코드를 정리했다. 나는 정리하기 전에 나의 초기 게시물에 문자열로했다. –
고마워, 그 트릭을 많이 주셔서 감사합니다. – Ian