jquery.touchScroll.js 942 Bytes
var touchScroll=function(target){
	var $this=target;
	var addEvent=function(t,n,e,b){
		t.get(0).addEventListener(n,e,b);
	};
	var startX=0,startY=0,scrollTop=0,scrollLeft=0;
	var flag=false;
	var tstart=function(e){
		//e.preventDefault;
		startX=e.targetTouches[0].pageX;
		startY=e.targetTouches[0].pageY;
		scrollTop=$this.scrollTop();
		scrollLeft=$this.scrollLeft();
		flag=true;
	};
	var tmove=function(e){
		e.preventDefault();
		if(flag){
			var currX=e.targetTouches[0].pageX,currY=e.targetTouches[0].pageY;
			var currLeft=scrollLeft-(currX-startX);
			var currTop=scrollTop-(currY-startY);
			$this.scrollLeft(currLeft);
			$this.scrollTop(currTop);
		}
	};
	var tend=function(e){
		//e.preventDefault();
		flag=false;
	}
	addEvent($this,'touchstart',tstart,false);
	addEvent($this,'touchmove',tmove,false);
	addEvent($this,'touchend',tend,false);
}
$(function(){
	$(".touchScroll").each(function(){
		touchScroll($(this));
	})
})