Alexbelkevich,
версия для сенсорных экранов, найдите простую проверку поддержки TouchEvent устройством и добавьте если хотите, чтоб переключало "на лету"
if(Touch) mousemove = touchmove и т.д.
window.addEventListener("DOMContentLoaded", function() {
[].forEach.call(document.querySelectorAll(".container"), function(b) {
var k = b.querySelector(".bottom"),
c = b.querySelector(".bar"),
d, e = b.clientHeight,
l = b.clientWidth,
g = function(a) {
a = a.changedTouches[0];
a = a.clientY - d;
a = Math.min(e, Math.max(0, a));
f(a)
},
f = function(a) {
k.style.clip = "rect(0," + l + "px," + a + "px,0)";
c.style.top = a + "px"
};
f(e / 2);
var h = function(a) {
window.removeEventListener("touchmove", g, !0);
window.removeEventListener("touchend", h, !0)
};
b.addEventListener("touchstart", function(a) { a = a.changedTouches[0];
d = a.clientY - c.offsetTop;
window.addEventListener("touchmove", g, !0);
window.addEventListener("touchend", h, !0)
}, !0)
})
});