【问题标题】:Animation not working with touch events?动画不适用于触摸事件?
【发布时间】:2013-04-01 00:10:41
【问题描述】:

所以,我制作了这个小型交互式轮盘赌:

http://techgoldmine.com/roulette/

我需要它在移动设备和桌面设备上工作。 最初,我通过让用户与与图像重叠的 SVG 圆圈进行交互来处理交互,但出于测试目的,我已将其删除。

它仍然无法在移动设备上运行,我不知道为什么。 视口元标记似乎设置正确:

<meta name="viewport" content="width=device-width, target-densitydpi=high-dpi, initial-scale=1.0, user-scalable=no" />

记录鼠标/手指位置:

 $(document).bind('mousemove', function (e) {
        xpos = e.pageX;
        ypos = e.pageY;
    });

    $(document).bind('touchmove', function (e) {
        xpos = e.pageX;
        ypos = e.pageY;
    });

Mousedown/mouseup/touchstart/touchend:

    //mouse
    $('.roulette').bind('mousedown', function () {
        if (inMotion == true) {
            cleanUp();
        }
        intervalvar = setInterval(spinWheel, 24);
        // spinWheel();
        $(document).bind('mouseup', function () {
            count = Math.abs(force)
            mouseup = 1;
        });
    });

    //touch
    $('.roulette').bind('touchstart', function () {
        if (inMotion == true) {
            cleanUp();
        }
        intervalvar = setInterval(spinWheel, 24);
        // spinWheel();
        $(document).bind('touchend', function () {
            count = Math.abs(force)
            mouseup = 1;
        });
    });

我也需要它与触摸一起工作。怎么了?

【问题讨论】:

  • 我正在尝试开发一个类似的东西,本质上是一个触摸驱动的轮盘赌,我很想看看你的代码,但是链接不起作用,你有另一个链接吗?跨度>

标签: javascript jquery css physics interactive


【解决方案1】:

你不会从 e.pageX 得到 pageX 要在触摸设备中获取 pageX,您可以从

//for javascript
e.touches[0].pageX
//for jquery
e.originalEvent.touches[0].pageX

【讨论】:

    猜你喜欢
    • 2015-09-24
    • 2011-12-11
    • 1970-01-01
    • 2015-10-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-04-13
    • 1970-01-01
    相关资源
    最近更新 更多