Я новичок в холсте HTML5, и до сих пор я узнал, как обрабатывать ввод данных с клавиатуры и мыши. Но как бы вы пошли, проверив ввод текста? Например, пользователь вводит текст, говорящий, ходить 20, который будет перемещать объект на 20 пикселей. Каков наилучший способ выполнить эту задачу?Как перемещать объект в холсте HTML5 с помощью ввода текста?
0
A
ответ
0
Вы получаете значение входных данных и использовать его в своей функции, как и другие движения:
document.getElementById('textFieldID').value
2
Вот рабочий пример для вас. Просто введите номер в текстовый ввод и нажмите enter. Попробуйте в https://jsfiddle.net/w97zp61u/
<!DOCTYPE html>
<html>
<head>
<script>
document.addEventListener('DOMContentLoaded',function(){
var canvas = document.getElementsByTagName("canvas")[0], input = document.getElementsByTagName("input")[0],
ctx = canvas.getContext('2d'), dy;
canvas.width =300, canvas.height =300, canvas.style.border ="1px solid black";
input.style.width = 300+"px", input.style.display="block";
var o ={
init: function(){
this.width = 10;
this.height = 10;
this.x = (canvas.width-this.width)/2;
this.y = canvas.height-this.height;
this.oy = this.y
}
}
o.init()
function draw(){
o.y-= 1
if(o.y>o.oy-dy){
ctx.clearRect(0,0,canvas.width,canvas.height)
ctx.fillRect(o.x,o.y,o.width,o.height)
window.requestAnimationFrame(draw)
}
else{
o.init()
window.setTimeout(function(){
ctx.clearRect(0,0,canvas.width,canvas.height)
ctx.fillRect(o.x,o.y,o.width,o.height)
},1000)
}
}
function moveUp(e){
if(e.keyCode === 13){
dy = parseFloat(input.value);
window.requestAnimationFrame(draw)
}
}
document.addEventListener('keydown',moveUp)
})
</script>
</head>
<body>
<div>
<canvas></canvas>
<input type ="text" placeholder ="type a number, then press enter"> </input>
</div>
</body>
</html>
Смежные вопросы
- 1. JS, HTML5 - добавление значения ввода текста как fillText на холсте
- 2. Как перемещать овал на холсте
- 3. HTML5 редактирование текста на холсте
- 4. Группировка фигур и текста в холсте HTML5
- 5. Как перемещать объект в круг вперед и назад в html5 холсте?
- 6. Как перемещать прямоугольник на холсте
- 7. Как перемещать круг на холсте?
- 8. Как перемещать изображение на холсте?
- 9. Хотите перемещать изображение по пути в холсте с помощью javascript
- 10. Прокрутить (не перемещать изображение) изображение в холсте HTML5
- 11. Рисование повернутого текста на холсте HTML5
- 12. Как перемещать изображение на холсте?
- 13. Как перемещать изображение на холсте html5 с помощью клавиши со стрелкой?
- 14. Как перемещать объект с помощью анимации?
- 15. Как правильно перемещать объект с помощью Bootstrap
- 16. Как перемещать объект с помощью радианов?
- 17. Как перемещать объект с помощью jQuery
- 18. Как дублировать фигуру в холсте HTML5?
- 19. Как перемещать один объект на холсте (PACMAN) при нажатии клавиши
- 20. Как нарисовать изображение в холсте в html5 с помощью javascript
- 21. Столкновения в холсте HTML5
- 22. Масштабирование изображений в холсте HTML5
- 23. Как нарисовать ecg-монитор в холсте с помощью HTML5?
- 24. Размеры в холсте html5
- 25. Ссылки в холсте (HTML5)
- 26. Как FillStyle с изображениями в холсте html5
- 27. Движение в html5 холсте
- 28. Как перемещать фигуру на холсте в WPF?
- 29. Разрывание в холсте HTML5?
- 30. «Стирание» в холсте html5