Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/453.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 转盘-元件位置在触摸端可视变化_Javascript_Touch_Mobile Safari_Iphone_Multi Touch - Fatal编程技术网

Javascript 转盘-元件位置在触摸端可视变化

Javascript 转盘-元件位置在触摸端可视变化,javascript,touch,mobile-safari,iphone,multi-touch,Javascript,Touch,Mobile Safari,Iphone,Multi Touch,我正在尝试为移动safari构建一个触摸/滑动旋转木马。到目前为止,还不错,但当我尝试在元素被滑动后设置元素的左侧位置时,遇到了一个问题。CSS中的左侧位置设置正确,但显示不正确 抱歉,如果这不清楚,但有点难以描述 复制 触摸项目3 向左滑动,刚好使项目1离开屏幕,不要将手指抬离屏幕。您应该看到第2项、第3项、第4项、第5项和第6项中的一些内容 将手指抬离屏幕,您将看到项目跳跃。项目3现在是项目2所在的位置,项目4是项目3所在的位置,等等 现在,再次尝试向左滑动。您将再次跳转项目。第2项又回到了

我正在尝试为移动safari构建一个触摸/滑动旋转木马。到目前为止,还不错,但当我尝试在元素被滑动后设置元素的左侧位置时,遇到了一个问题。CSS中的左侧位置设置正确,但显示不正确

抱歉,如果这不清楚,但有点难以描述

复制

触摸项目3

向左滑动,刚好使项目1离开屏幕,不要将手指抬离屏幕。您应该看到第2项、第3项、第4项、第5项和第6项中的一些内容

将手指抬离屏幕,您将看到项目跳跃。项目3现在是项目2所在的位置,项目4是项目3所在的位置,等等

现在,再次尝试向左滑动。您将再次跳转项目。第2项又回到了原来的位置

基本上,我所做的是根据滑动距离来转换项目。在触摸端,我将元素的位置设置为平移位置。这就是它被打破的地方

我所有的代码都在上面的url中

任何帮助都将不胜感激

谢谢

明白了

所以我的问题不是重置转换。我加了一行:

items[i].style.webkitTransform = "translate3d(0px, 0px, 0px)";
到我的updatePosition函数,一切都很好

  function updatePosition(){
    for(var i=0; i<items.length; i++){
      var translatedLeft = getTranslatedPosition(items[i]).left;
      items[i].style.left = translatedLeft + "px";
      items[i].style.webkitTransform = "translate3d(0px, 0px, 0px)";
    }
  }
工作演示:在iPhone模拟器或iOS或Android设备中查看