1
0
mirror of https://github.com/devfake/flox.git synced 2024-11-15 06:32:34 +01:00
flox/client/app/helper.js
2016-11-30 13:01:25 +01:00

38 lines
921 B
JavaScript

export default {
methods: {
// http://stackoverflow.com/a/24559613
scrollToTop(scrollDuration = 300) {
let cosParameter = window.scrollY / 2;
let scrollCount = 0;
let oldTimestamp = performance.now();
function step(newTimestamp) {
scrollCount += Math.PI / (scrollDuration / (newTimestamp - oldTimestamp));
if(scrollCount >= Math.PI) window.scrollTo(0, 0);
if(window.scrollY === 0) return;
window.scrollTo(0, Math.round(cosParameter + cosParameter * Math.cos(scrollCount)));
oldTimestamp = newTimestamp;
window.requestAnimationFrame(step);
}
window.requestAnimationFrame(step);
},
addZero(item) {
if(item < 10) {
return '0' + item;
}
return item;
},
// Language helper
lang(text) {
const language = JSON.parse(config.language);
return language[text];
}
}
}