【问题标题】:Rotate css3 bug旋转 css3 错误
【发布时间】:2013-07-21 09:37:46
【问题描述】:

我正在制作一个基于http://www.paulrhayes.com/experiments/cube-3d/ 的 3d 立方体 但我的反应是鼠标事件和移动设备上的触摸事件。

我引入 RotateZ 来避免原始海耶斯立方体的奇怪行为。

但是当我尝试向左 -> 再次向下并离开时,它会出错。

   -webkit-transform:rotateX(-90deg) rotateY(-90deg) rotateZ(0deg);

RotateX 和 Z 在同一轴上移动立方体我不知道为什么。

这是一个错误还是有解决方案?

这是我的问题的详细 jsfiddle:

http://jsfiddle.net/uq2cr/6/

感谢您的回答!

【问题讨论】:

    标签: css transform


    【解决方案1】:

    问题

    这是因为当您向上/向下移动鼠标时,同时向左/向右移动并单击它会停留在向上/向下动作。

    当前结构

    我对 x 坐标的更新进行了基准测试。

    对于左右方向,x 0 似乎不是相对的。

    xAngle、yAngle、zAngle 增量,但不要重置为 0。

    建议

    我建议对 cubePointerMove() 的结构进行一些更改。让每个方向都有自己的堆栈。这样,四个方向就不会出现问题。

    现在设置的方式是在左/右块中重复上/下操作。

    当前


    // Left
    if( xMove < 0) {
      // Up
      if( yMove < 0 ) {
        if(xMove < yMove){
        }
      }
      // Down
      else {
      }
    }
    // Right
    else
    {
    }
    

    修订


    // Up
    if( yMove < 0 ) {
    }
    // Down
    else {
    }
    // Left
    if( xMove < 0) {
    }
    // Right
    else {
    }
    

    【讨论】:

    • 我,感谢您花时间回答我的问题!但是你测试 -webkit-transform:rotateX(-90deg) rotateY(-90deg) rotateZ(0deg);立方体的这个位置?如果您尝试使用 chrome 元素浏览器手动移动 rotateX 或 Z 值,则立方体在这两种情况下都会垂直移动......它一定不能......
    • 我在 Chrome 中进行测试。要在 Internet Explorer 和 Firefox 中使用此功能,您需要 transform: rotateX();
    • 我现在在 chrome 下,这对我来说不是浏览器兼容性的问题。如果您的 modif 对您有用,您能否将更新的 jsfiddle 发送给我并努力进行测试,确保我们理解?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-02-14
    • 2013-05-22
    • 2014-06-21
    • 2019-02-16
    • 1970-01-01
    • 2013-02-17
    相关资源
    最近更新 更多