Размытая анимация. Как исправить?
Всем привет. Как можно сделать анимацию более плавной и вообще, возможно ли это?
$(document).ready(function(){
var i = 0;
$(document).keydown(function(event) {
if(event.which == 39){
$('div').css("margin-left",""+i+"px");
i+=6;
}
});
});
Нажимаем клавишу со стрелочкой вправо и блок div меняет свои координаты. Но анимация дерганая. Реально ли в javascript добиться более плавного эффекта при этой же скорости? Вот ссылка на рабочий скрипт http://jsfiddle.net/GP9Q2/ |
$(document).ready(function(){
var i = 0;
$(document).keydown(function(event) {
if(event.which == 39){
$('div').animate({"margin-left":""+i+"px"},1500);
i+=6;
}
});
});
iv').animate("margin-left",""+i+"px");
|
Спасибо. Вроде небольшой эффект есть.
|
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<title> - jsFiddle demo</title>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.9.0.js"></script>
<link rel="stylesheet" type="text/css" href="/css/normalize.css">
<link rel="stylesheet" type="text/css" href="/css/result-light.css">
<style type="text/css">
div{
height: 20px;
width: 20px;
background-color: red;
}
</style>
<script type="text/javascript">
var i = 0;
var deLtaI=6;
var delay=parseInt(deLtaI*3.6);
$(document).keydown(function(event) {
if(event.which == 39){
$('div').stop(true).animate({"margin-left":""+i+"px"},delay,'linear',function() {
i+=deLtaI;});
}
});
</script>
</head>
<body style="">
<div></div>
</body>
</html>
|
| Часовой пояс GMT +3, время: 03:26. |