darsain / sly

JavaScript library for one-directional scrolling with item based navigation support.
http://darsa.in/sly
2.87k stars 497 forks source link

touchDragging on IE11/Windows 8 #164

Open mrfind opened 9 years ago

mrfind commented 9 years ago

Hi darsain, thanks for an excellent and very useful library!

I ran into a problem using IE11 on a Windows 8 touch device (Fujitsu tablet): Everything seems to work fine except for touch dragging. I tried the demos on your page on Android and iOS phones: no problem. But in Win 8/IE 11 (both the "normal" and the "metro" versions) they show no reaction when I try to drag.

Any way to fix this?

darsain commented 9 years ago

Hm... no clue. I don't have any Win touch device to test it on.

rbrochot commented 9 years ago

Hi, we encountered the same problem here, works perfectly on windows 7/8, with IE11 as long as we use the mouse, but the touch won't do anything on a windows 8 tablet

Thanks for the work you did on the lib by the way ;)

darsain commented 9 years ago

So according to #178 it seems the dragging is being terminated because X&Y dragging paths are equal. I don't know why is this even happening. Usually (mouse/touch)move events are triggered for every pixel moved. This means that moving from A1 to B2 in here:

    1   2
   --- ---
A |   |   |
   --- ---
B |   |   |
   --- ---

Would trigger 2 events, as your movement is:

A1 -> (A2 || B1) -> B2

IE is probably merging multiple events into one. Or maybe something else is happening. Can't tell. I'd need an IE touch device :/

darsain commented 9 years ago

1.4.0, and consecutive 1.4.1 have a lot of fixes and some dragging related changes. Could someone try if some of these changes didn't fix this issue?

maweeks commented 9 years ago

Testing in 1.4.4 the issue is still apparent. I have just tested it on a ASUS Vivobook in both chrome and IE, in chrome the touch gestures work, but in IE they don't.

I believe IE is hijacking the touch gestures as I know that on phones and tablets the left and right swipes are used for going back and forward in history.

This link might help but I wasn't able to make it work: http://stackoverflow.com/questions/13654238/can-i-disable-ie10-history-swipe-gesture

darsain commented 9 years ago

Wait, so it works for vertical Sly? Just not horizontal? And have you tried all suggestions in that question?

maweeks commented 9 years ago

I've tried the suggestions that I've found, and none have helped. The site I'm creating (only uses horizontal slys) and all of the examples on darsa.in/sly are not usable with the touch screen I am using. I'm on IE11.0.9600.17690 And yeah, I've tried all the suggestions that I can see here. Up and down drags always just scroll the whole page not the front element. Hope this helps

otamayo commented 9 years ago

Experiencing the same issue using Microsoft Edge 20.10420.16384.0 on Windows 10.

andreyvolokitin commented 8 years ago

Could it happen because IE does not support touch events (http://caniuse.com/#search=touch), but instead supports pointer events (http://caniuse.com/#search=pointer)?