utils.js 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. module.exports = {
  2. /**
  3. * Parse second to 00:00 format
  4. *
  5. * @param {Number} second
  6. * @return {String} 00:00 format
  7. */
  8. secondToTime: (second) => {
  9. const add0 = (num) => num < 10 ? '0' + num : '' + num;
  10. const min = parseInt(second / 60);
  11. const sec = parseInt(second - min * 60);
  12. return add0(min) + ':' + add0(sec);
  13. },
  14. /**
  15. * control play progress
  16. */
  17. // get element's view position
  18. getElementViewLeft: (element) => {
  19. let actualLeft = element.offsetLeft;
  20. let current = element.offsetParent;
  21. const elementScrollLeft = document.body.scrollLeft + document.documentElement.scrollLeft;
  22. if (!document.fullscreenElement && !document.mozFullScreenElement && !document.webkitFullscreenElement) {
  23. while (current !== null) {
  24. actualLeft += current.offsetLeft;
  25. current = current.offsetParent;
  26. }
  27. }
  28. else {
  29. while (current !== null && current !== element) {
  30. actualLeft += current.offsetLeft;
  31. current = current.offsetParent;
  32. }
  33. }
  34. return actualLeft - elementScrollLeft;
  35. },
  36. /**
  37. * check if user is using mobile or not
  38. */
  39. isMobile: /mobile/i.test(window.navigator.userAgent)
  40. };