Показать сообщение отдельно
  #12 (permalink)  
Старый 11.03.2015, 16:08
Аватар для ruslan_mart
Профессор
Отправить личное сообщение для ruslan_mart Посмотреть профиль Найти все сообщения от ruslan_mart
 
Регистрация: 30.04.2012
Сообщений: 3,018

Sigizmund2012, верно, тогда можно обернуть условие в скобки:

$(document).on('keydown keyup', function(e) {
    var ids = {69: 'exort', 81: 'quas', 82: 'invoke', 87: 'wex'};
    if(e.keyCode in ids) {
        var value = (128 - 3 * (e.type == 'keydown')) + 'px';
        $('#' + ids[e.keyCode]).css({height: value, width: value});
    }
});


Сообщение от Sigizmund2012
Свойства объекта всё-таки нужно как-то перебрать и для этого тоже используется for in, просто он неявно вызывается.
Да не нужен тут никакой for..in.

var ids = {69: 'exort', 81: 'quas', 82: 'invoke', 87: 'wex'}, keyCode;

keyCode = 69;
alert(ids[keyCode]);

keyCode = 81;
alert(ids[keyCode]);


Может так понятнее?
Ответить с цитированием