1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
  | function touchHandler(event) 
 |  {    
 |       
 |      var touches = event.changedTouches, 
 |          first = touches[0], 
 |          type = ""; 
 |           switch(event.type) 
 |      { 
 |          case "touchstart": type="mousedown"; break; 
 |          case "touchmove":  type="mousemove"; break;         
 |          case "touchend":   type="mouseup"; break; 
 |          default: return; 
 |      } 
 |    
 |               //initMouseEvent(type, canBubble, cancelable, view, clickCount,  
 |      //           screenX, screenY, clientX, clientY, ctrlKey,  
 |      //           altKey, shiftKey, metaKey, button, relatedTarget); 
 |       
 |      var simulatedEvent = document.createEvent("MouseEvent"); 
 |      simulatedEvent.initMouseEvent(type, true, true, window, 1,  
 |                                first.screenX, first.screenY,  
 |                                first.clientX, first.clientY, false,  
 |                                false, false, false, 0/*left*/, null); 
 |      if(touches.length < 2) { 
 |        first.target.dispatchEvent(simulatedEvent); 
 |        event.preventDefault(); 
 |      } 
 |  } 
 |  
  |