IE10 MSPointerUp在不释放手指的情况下开火(在Touch Hold上)。

问题描述 投票:1回答:1

我一直在使用IE10触摸API(在三星Slate上测试),我发现在按住触摸后,触摸释放动作会被触发。

因此,以下是我在屏幕上按住手指时被触发的事件过程。

  • 0ms = MSPointerDown with pointerId = 0。
  • 1ms = MSPointerMove with pointerId = 0。
  • ~1000ms = MSPointerUp with pointerId = 0。
  • ~1001ms = MSPointerDown with pointerId = 1 REPEAT POINT
  • ~1002ms = MSPointerMove with pointerId = 1。
  • ~1250ms = MSPointerUp with pointerId = 1。

然后在REPEAT POINT重复,指针Id的递增。

这是代码。

// Setup the css on the canvas (allows for detection of MSPointerMove)
$(canvas).css("-ms-touch-action", "none");

// Initialize regular touch actions
canvas.addEventListener('MSPointerDown', TouchStart, false);
canvas.addEventListener('MSPointerMove', TouchMove, false);
canvas.addEventListener('MSPointerUp', TouchEnd, false);

// Initialize the revoking of gestures/other unwanted pieces
canvas.addEventListener("MSPointerCancel", function (e) { e.preventDefault(); }, false);
canvas.addEventListener("MSGestureInit", function (e) { if (e.preventManipulation) e.preventManipulation(); }, false);
canvas.addEventListener("MSHoldVisual", function (e) { e.preventDefault(); }, false);

这绝对可能是Slate的问题,但我想最好还是问一下,以确保我没有遗漏什么。 如果这不仅仅是Slate的问题,那么我如何允许用户按住手指,而不在一秒左右后触发一个不需要的 "MSPointerUp "事件。

javascript internet-explorer touch dom-events internet-explorer-10
1个回答
0
投票

原来这个问题是W7W8三星平板电脑未更新驱动的常见问题。

能够通过更新驱动来解决。http:/www.samsung.comcasupportwin8upgrade

© www.soinside.com 2019 - 2024. All rights reserved.