Марина Степанова "Работа с pointer-событиями в ie10 на...
Post on 19-Jun-2015
388 Views
Preview:
DESCRIPTION
TRANSCRIPT
2
3
4
5
6
7
8
9
─
─
─
─
11
•
•
•
•
•
12
•
•
•
•
•
•
•
•
13
function onPointerDown (event) { if (!gesture) { gesture = new MSGesture(); gesture.target = targetElement; } gesture.addPointer(event.pointerId); }
15
─
─
─
16
─
─
─
─
17
18
20
─
─
─
21
22
─
─
23
24
if (window.navigator.msPointerEnabled) {
// Pointer events are supported.
}
26
touchstart
touchmove
touchend
27
28
29
30
31
32
33
─
─
─
34
35
document.addEventListener('MSPointerDown', onPointerDown, true);
document.addEventListener('MSLostPointerCapture', onPointerEnd, true);
document.addEventListener('MSPointerUp', onPointerEnd, true);
document.addEventListener('MSPointerCancel', onPointerEnd, true);
document.addEventListener('MSPointerOut', onPointerEnd, true);
function onPointerDown (e) {
touches.push(e);
pointerNumber++;
}
function onPointerEnd (e) {
if (inTouches(e)) {
removeByPointerId(e.pointerId);
pointerNumber--;
}
36
function inTouches (e) {
var pointerId = e.pointerId;
for (var i = 0, l = touches.length; i < l; i++) {
if (touches[i].pointerId == pointerId) {
return true;
}
}
return false;
}
function removeByPointerId (pointerId) {
for (var i = 0, l = touches.length; i < l; i++) {
if (touches[i].pointerId == pointerId) {
touches.splice(i, 1);
return;
}
}
}
37
─
38
function onPointerDown (event) { if (!gesture) { gesture = new MSGesture(); gesture.target = targetElement; } gesture.addPointer(event.pointerId); }
39
var gestures = {}; function onPointerDown (event) { var pointerType = event.pointerType;
if (!gestures[pointerType]) { gestures[pointerType] = new MSGesture(); gestures[pointerType].target = targetElement; } gestures[pointerType].addPointer(event.pointerId); }
40
41
42
43
Div №1 Div №2
44
Div
45
Div
46
47
─
─
─
49
─
─
─
50
─
51
top related