Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/463.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Touchend事件,返回touchstart状态动画_Javascript_Animation_Touch - Fatal编程技术网

Javascript Touchend事件,返回touchstart状态动画

Javascript Touchend事件,返回touchstart状态动画,javascript,animation,touch,Javascript,Animation,Touch,我目前正在使用webkit和touch events 我可以让一个元素沿着触控移动滑动,然后在触控端将其恢复 但不管我怎么做,它都会在没有动画的情况下恢复到原来的状态,所以很难看 var obj = document.getElementById('element'); obj.addEventListener('touchmove', function(event) { event.preventDefault(); if (event.targetTouches.length ==

我目前正在使用webkit和touch events

我可以让一个元素沿着触控移动滑动,然后在触控端将其恢复

但不管我怎么做,它都会在没有动画的情况下恢复到原来的状态,所以很难看

var obj = document.getElementById('element');

obj.addEventListener('touchmove', function(event) {
  event.preventDefault();
  if (event.targetTouches.length == 1) {
    var touch = event.targetTouches[0];
    obj.style.left = touch.pageX + 'px';
  }
}, false);

obj.addEventListener('touchend', function(event) {

  ???

}, false);
我尝试过startnode、style、webkit动画名称(在触摸事件之外工作)和其他一些古怪的方式,但它仍然毫无生气


谢谢你的帮助

您可以将一个元素设置为具有过渡,以便在设置位置时,该元素移动到该位置需要X个时间量

.class {
    -webkit-transition: left ease 3s;
}
在拖动过程中,您需要将其设置为0s,以便它不会延迟地跟随您的手指

例如:

var obj = document.getElementById('element');

obj.addEventListener('touchmove', function(event) {
  event.preventDefault();
  if (event.targetTouches.length == 1) {
    obj.style.webkitTransition = 'left ease 0s';
    var touch = event.targetTouches[0];
    obj.style.left = touch.pageX + 'px';
  }
}, false);

obj.addEventListener('touchend', function(event) {

  obj.style.webkitTransition = 'left ease 3s';
  //Set position here
}, false);