$.fn.touchScrolling = function(){ var startPos = 0, self = $(this); self.bind('touchstart', function(event) { var e = event.originalEvent; startPos = self.scrollTop() + e.touches[0].pageY; }); self.bind('touchcancel', function(event) { e.preventDefault(); }); self.bind('touchmove', function(event) { var e = event.originalEvent; self.scrollTop(startPos - e.touches[0].pageY); e.preventDefault(); }); }; $(function() { $('#touch-scroll').touchScrolling(); $('#touch-scroll_menu').touchScrolling(); /* var scroll_windows = document.querySelectorAll("#touch-scroll_window"); for (var i = 0; i < scroll_windows.length; i++) { $(scroll_windows[i]).scroll_windows; } */ });