В вашем скрипте много пропущенных }
и )
. Также div
обычно не реагирует на события нажатия клавиш, потому что обычно не получает фокус клавиатуры; лучше использовать, например, document
.
Кроме того, лучше анимировать, используя $('.divs')
(вместо $('div')
), чтобы предотвратить анимацию других элементов на странице.
Результат ниже; в конце концов, он может еще не выполнить то, что вам нужно, я исправил только технические проблемы, чтобы он работал и анимировался.
$(document).ready(function() {
$(document).keypress(function(e) {
if (String.fromCharCode(e.which) == 'a') {
console.log("Key: a");
$(".divs").animate({
'top': '50px',
'width': '+=25px',
'height': '+=25px'
}, 1000);
}
});
$(document).keypress(function(e) {
if (String.fromCharCode(e.which) == 'b') {
console.log("Key: b");
$(".divs").animate({
'bottom': '50px',
'width': '-=25px',
'height': '-=25px'
}, 1000);
}
})
})
.divs {
position: absolute;
height: 100px;
width: 100px;
border: 2px solid red;
background-color: yellow;
}
#div1 { left: 40px; top: 125px; }
#div2 { right: 45px; bottom: 27px; }
#div3 { left: 85px; top: 352px; }
#div4 { right: 258px; bottom: 323px; }
#div5 { left: 450px; top: 587px; }
#div6 { right: 198px; top: 498px; }
#div7 { left: 375px; top: 450px; }
#div8 { right: 425px; bottom: 575px; }
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="divs" id="div1"><h3>Chris</h3></div>
<div class="divs" id="div2"><h3>Chris</h3></div>
<div class="divs" id="div3"><h3>Chris</h3></div>
<div class="divs" id="div4"><h3>Chris</h3></div>
<div class="divs" id="div5"><h3>Lynch</h3></div>
<div class="divs" id="div6"><h3>Lynch</h3></div>
<div class="divs" id="div7"><h3>Lynch</h3></div>
<div class="divs" id="div8"><h3>Lynch</h3></div>