Advertisement
DmitryPythonDevelop

Untitled

Dec 22nd, 2019
181
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. // HTML
  2.  
  3.     <div id="touch-panel"></div>
  4.     <div id="sprite"></div>
  5.  
  6. // CSS
  7.    
  8.     body {
  9.         overflow: hidden;
  10.         width: 100vw;
  11.         height: 100vh;
  12.     }
  13.     #touch-panel {
  14.         position: fixed;
  15.         top: 0;
  16.         left: 0;
  17.         z-index: 100;
  18.         width: 100vw;
  19.         height: 100vh;
  20.         margin: 0;
  21.         padding: 0;
  22.     }
  23.     #sprite {
  24.         position: absolute;
  25.         width: 50px;
  26.         height: 85px;
  27.         background-color: #000;
  28.     }
  29.    
  30. // JS
  31.  
  32. // Идентификация панели выступающей в роли touch-pad`а ( по умолчанию - touch-panel )
  33. var TouchPanel = document.getElementById('touch-panel');
  34.  
  35.  
  36. // Отслеживание касания и последующего перемещения
  37. TouchPanel.addEventListener("touchstart", function (e) {
  38.  
  39.     // Стартовое положение пальца
  40.     var StartPosisionX = e.touches[0].clientX;
  41.     var StartPosisionY = e.touches[0].clientY;
  42.  
  43.         // Отслеживание перемещения
  44.         TouchPanel.addEventListener("touchmove", function (e) {
  45.  
  46.             // Положение после начала движения
  47.             var positionX = e.touches[0].clientX;  
  48.             var positionY = e.touches[0].clientY;
  49.  
  50.             console.log(positionX, positionY)
  51.  
  52.             // Разницы перемещения
  53.             positionX = StartPosisionX - positionX;
  54.             positionY = StartPosisionY - positionY;
  55.  
  56.             // Новое стартовое положение
  57.             StartPosisionX = e.touches[0].clientX;
  58.             StartPosisionY = e.touches[0].clientY;     
  59.  
  60.                 // Передача параметров в функцию для обработки данных
  61.                 swipe(positionX, positionY);
  62.  
  63.         }, false);
  64.  
  65. }, false);
  66.  
  67. var sprite = document.getElementById('sprite');
  68.  
  69. // Обработка перемещения
  70. function swipe( X, Y ) {
  71.  
  72.     console.log(X, Y);
  73.  
  74.     sprite.style.top = sprite.getBoundingClientRect().top - Y + "px";
  75.     sprite.style.left = sprite.getBoundingClientRect().left - X + "px";
  76. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement