触摸屏防止滚动

时间:2014-01-13 23:28:44

标签: javascript jquery touch

我有一个联想触摸屏桌面,我正在运行一个基于触摸的网站。问题是,当我用八根手指点击并尝试滚动时,浏览器(Chrome)似乎会冻结。浏览器锁定。所以我试图用jQuery创建一个只注册一个触摸事件的函数。

以下是我现在所拥有的:

        var isTouched = false;
        var $document = $(document);
        $document.on('touchstart', function (e) {
            if (!isTouched) {
                isTouched = true;
                console.log('start: ' + isTouched);

                $document.on('touchend', function() {
                    if (isTouched) {
                        isTouched = false;
                        console.log('end: ' + isTouched);
                    }
                });
            }
        });

哪个有效,但它阻止我滚动,当我将第一根手指从屏幕上抬起时,touchend似乎正在触发。当我将手指从导致touchend的屏幕移开时,预期的行为仅适用于touchstart。任何创建函数的建议,一次只能注册一个touchstart并允许滚动(即不忽略touchmove)。

0 个答案:

没有答案