2017-04-12 5 views
0
$(window).keydown(function(event){ 
    var c = String.fromCharCode(event.which); 
    if (c === 'a'){ 
     myImage.css("height", "+=2"); 
     myImage.css("width", "+=2"); 
    } else if (c === 's'){ 
     myImage.css("height", "-=2"); 
     myImage.css("width", '-=2'); 
    } 
}); 

これは私のコードです。キーを押すと2ピクセル小さくなり、キーを押すと2ピクセル大きくなります。コードは今は何もしません。どのキーが押されたかに基づいてイメージのサイズを変更します。

「getpreventdefault()の使用は廃止されました」という警告が表示されていますが、これが原因であるとは思われません。

編集:警告は、キーを押した後にのみ表示されます。

+0

私は ' - = 2'をそのようなCSS属性として使うことはできません。あなたはおそらく数学を行う必要があります(現在のサイズを得る、減算する、または2を加える)、そしてその特定の幅を画像に適用する必要があります。副題として、幅と高さのいずれかを設定し、OTHERプロパティを「auto」のままにしておくと、物事を劇的に簡素化できます。 –

+0

以前のバージョンでは、var height = $(myImage).height()+ 2を使用しました。および\t myImage.css( "height"、height);それでも、うまくいきませんでした –

+0

私は大文字を指定していませんが、文字コードが大文字で入力されているように見えます。そして、実際にあなたの= 2は実際に働いています):https://jsfiddle.net/cale_b/5hzqe8o6/ –

答えて

0

各キー押しの幅と高さを計算するだけです。幅と高さを更新します。

$(window).keydown(function(e){ 
    var $img = $('#myImg'), 
     key = e.which, 
     height = $img.height(), 
     width = $img.width(); 

    if (key === 65) 
    $img.css("height", height + 2).css("width", height + 2); 
    else if (key === 83) 
    $img.css("height", height - 2).css("width", height - 2); 
}); 

実例については、fiddle hereを参照してください。異なるキーを計算する必要がある場合は、from this sweet codepenのキーコードを取得できます。

関連する問題