2012-11-05 45 views
3
我有在Windows上使用指針和手勢事件問題

的問題是,我不能夠探測到任何手指/姿勢運動在我的網站上通過JavaScript。我確實按照微軟的指示:http://msdn.microsoft.com/en-us/library/ie/hh673557(v=vs.85).aspxPoitner並與Windows 8手勢:window.navigator.msPointerEnabled檢測什麼

然而,看起來即使是最簡單的功能window.navigator.msPointerEnabled返回或者nullfalse時,它應該返回一個true(因爲我使用的是Windows 8平板電腦就是允許觸摸)。

有沒有人有過同樣的問題?如果是這樣,你是如何解決這個問題的?

+1

更新:事實證明,如果我在Windows中創建VS2010新的MVC3項目8操作系統,看起來像指針可以被檢測到。但是,如果項目是在Windows 7中創建的,那麼它將無法工作。這太奇怪了...... – DLee

回答

0
The following example is a basic paint application that works with mouse, touch, and pen via pointer events. 

<style> 
    html { 
    -ms-touch-action: none; /* Shunt all pointer events to JavaScript code. */ 
    } 
</style> 
<canvas id="drawSurface" width="500px" height="500px" style="border:1px solid black;"></canvas> 
<script type='text/javascript'> 
window.addEventListener('load', function() { 
    var canvas = document.getElementById("drawSurface"), 
    context = canvas.getContext("2d"); 
    if (window.navigator.msPointerEnabled) { 
    canvas.addEventListener("MSPointerMove", paint, false); 
    } 
    else { 
    canvas.addEventListener("mousemove", paint, false); 
    } 
    function paint(event) { 
    context.fillRect(event.clientX, event.clientY, 5, 5); 
    } 
}); 
</script> 

For more details checkout this link

+0

感謝您的回覆。但是我問的是:爲什麼當「window.navigator.msPointerEnabled」爲「未定義」時它應該是「true」? – DLee