I am using iscroll and it works well until one point but at some point the scrolling area is bouncing back.
setTimeout(function () {
var gridScroll = new iScroll('iscroll-wrapper-grid');
}, 100);
ul { margin:0; }
Fixes the problem. Not sure why iscroll doesn't take margin into account. Maybe it says something in the docs about that.