2013-05-23 3 views
1

Мне интересно, как записывать нажатия клавиш на пустой html-странице, например, если в строке (после eachother) нажаты клавиши A-> B-> C, тогда отобразите div или перенаправьте пользователя , И если пользователь нажимает A-> B->, но не на C, перезагрузите массив, чтобы пользователь снова набрал его (с самого начала), чтобы вызвать действие.jQuery keypress array password

+0

Ничего, я просто подумал, что идеи. –

ответ

0

захватывает события keydown и сохраняет результаты в глобальных переменных. поместите логику в событие захвата, чтобы выполнить требуемое действие.

См http://api.jquery.com/keydown/

+0

Прошу прощения, если я прошу слишком много, но вы хотите помочь мне и написать образец кода? Я новичок в jQuery и его синтаксисе, мне просто нужна эта вещь для небольшого проекта. –

+0

Вы посмотрели ссылку, которую я добавил. Он имеет пример кода –

0

Просто грубый пример

var checkArray = [], 
    error = 'Enter the right combination !!', 
    success = 'Success !!', 
    $div = $('#div'), 
    timer = 1000, 
    timeout; 

$(document).on('keyup', function (e) { 
    if(timeout) clearTimeout(timeout); 
    var keyPressed = e.keyCode; 
    (keyPressed > 64 && keyPressed < 68) ? checkArray.push(keyPressed) 
             : checkArray = []; 
    console.log(checkArray.join('-')); 
    if (checkArray && checkArray.length === 3) { 
     if (checkArray[0] === 65 && checkArray[1] === 66 
           && checkArray[2] === 67) { 
      $div.text(success).addClass('a'); 
      timer = 2000; 
     } 
    } else { 
     $div.text(error).removeClass('a'); 
    } 
    timeout = setTimeout(reset, timer); 
}); 

function reset() { 
    timer =1000; 
    checkArray = []; 
    $div.text(error).removeClass('a'); 
} 

Check Fiddle