Здравствуйте. Для курсовой я подготовил программу на управление объектом. Можете мне подкинуть какую нибудь идею, чтобы придать смысл данному алгоритму? Просто у меня что-то никаких идей нет... И еще вопрос, как сделать увеличение скорости интерактивное? (Жалкое подобие там есть, но не работает((( ). Заранее благодарю! | Код | <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title></title> <style type="text/css">#pole { width: 500px; height: 300px; background: url(1.jpg); border: 5px solid #6b502e; overflow: hidden; } #obj { width: 10px; height: 10px; background: black; border-radius: 50%; }</style> <script type="text/javascript"> var left = false, right = false, top = false, bottom = false, s = false, n = 1; function speed(){ n = document.getElementById('speed').value return n; } function anim_right(right) { if (right){ left = false; top = false; bottom = false; var oldLeft = parseInt(document.getElementById("obj").style.left), speed = n; document.getElementById("obj").style.left = oldLeft + speed + "px"; } else return false; } function anim_bottom(bottom) { if (bottom){ left = false; top = false; right = false; var oldTop = parseInt(document.getElementById("obj").style.top), speed = n; document.getElementById("obj").style.top = oldTop + speed + "px"; } else return false; } function anim_left(left) { if (left){ right = false; top = false; bottom = false; var oldRight = parseInt(document.getElementById("obj").style.left), speed = n; document.getElementById("obj").style.left = oldRight - speed + "px"; } else return false; } function anim_top(top) { if (top){ right = false; left = false; bottom = false; var oldBottom = parseInt(document.getElementById("obj").style.top), speed = n; document.getElementById("obj").style.top = oldBottom - speed + "px"; } ///вызов функции animation() через 100мс else return false; } function stop(s) { if (s){ left = false; right = false; top = false; bottom = false; anim_top(top); anim_bottom(bottom); anim_right(right); anim_left(left); } else return false; } function init(e){ switch (e.keyCode) { case 38 : {top = true; anim_top(top); setTimeout("anim_top(top)", 10); break; } case 39 : {right = true; anim_right(right); setTimeout("anim_right(right)", 10); break;} case 40 : {bottom = true; anim_bottom(bottom); setTimeout("anim_bottom(bottom)", 10); break;} case 37 : {left = true; anim_left(left); setTimeout("anim_left(left)", 10 ); break;} case 32 : {s = true; stop(s); break;} default : return; break; } } </script> </head> <body onkeydown="init(event)"> <div id="pole"> <div id="obj" style="position : relative; left : 100px; right : 100px; top : 100px; bottom : 100px; width: 10px; height: 10px; background: black;"></div> </div> <p>Желаемый уровень сложности (скорость)</p> <input type="text" size="2" id="speed"> <button onclick="speed">Установить</button> </body> </html>
|
|