2014-09-02 86 views
4

我想在IE11上聽pointermove事件,但pointermove似乎只針對鼠標(可能是筆)觸發,但在您使用手指時觸發。Pointermove在IE上不觸發觸摸

http://jsfiddle.net/qq2hjL2g/

其實,specification說,它激發了筆/鼠標,所以這可能不是真正的錯誤。

但是,有沒有什麼辦法可以在IE上點擊觸摸點?必須有,但我非常驚訝地看到pointermove根本沒有射擊。

編輯:我發現,如果我把CSS touch-action: none上div,pointermove事件觸發。但爲什麼?我試圖找到與此相關的文件,但到目前爲止我找不到任何文件。

編輯:我認爲touch-action CSS指定瀏覽器處理哪些觸摸動作。這意味着設置touch-actionnone告訴瀏覽器不是處理任何觸摸事件,並且開發者負責控制throutgh JavaScript事件的行爲。這就是爲什麼我只有在擁有CSS時才能正確解決事件。 (更多的MDN。)

回答

1

我也試圖與IE11 touch接口。 我相信MSGesture用於觸摸事件,因爲他們的文檔中,他們指的「手指」

http://msdn.microsoft.com/en-us/library/windows/apps/hh465856.aspx

http://msdn.microsoft.com/en-US/library/ie/hh968249.aspx

我相信你感興趣的手勢是: MSGestureStart - 「觸發時屏幕在該元素上的某個位置被觸摸。「

MSGestureChange MSGestureChange - 「當與交互相關聯的手指位置在屏幕上移動時觸發。」

MSGestureEnd - 「此事件在所有關聯聯繫人都從表面上移除時觸發」

+0

我還沒有嘗試過,但它看起來很有希望。謝謝。 – CookieMonster 2014-09-23 11:59:47