index.js 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. export function randomExtend (minNum, maxNum) {
  2. if (arguments.length === 1) {
  3. return parseInt(Math.random() * minNum + 1, 10)
  4. } else {
  5. return parseInt(Math.random() * (maxNum - minNum + 1) + minNum, 10)
  6. }
  7. }
  8. export function debounce (delay, callback) {
  9. let lastTime
  10. return function () {
  11. clearTimeout(lastTime)
  12. const [that, args] = [this, arguments]
  13. lastTime = setTimeout(() => {
  14. callback.apply(that, args)
  15. }, delay)
  16. }
  17. }
  18. export function observerDomResize (dom, callback) {
  19. const MutationObserver = window.MutationObserver || window.WebKitMutationObserver || window.MozMutationObserver
  20. const observer = new MutationObserver(callback)
  21. observer.observe(dom, { attributes: true, attributeFilter: ['style'], attributeOldValue: true })
  22. return observer
  23. }
  24. export function getPointDistance (pointOne, pointTwo) {
  25. const minusX = Math.abs(pointOne[0] - pointTwo[0])
  26. const minusY = Math.abs(pointOne[1] - pointTwo[1])
  27. return Math.sqrt(minusX * minusX + minusY * minusY)
  28. }