util.js 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. "use strict";
  2. Object.defineProperty(exports, "__esModule", {
  3. value: true
  4. });
  5. exports.getMotionName = getMotionName;
  6. exports.offset = offset;
  7. // =============================== Motion ===============================
  8. function getMotionName(prefixCls, transitionName, animationName) {
  9. var motionName = transitionName;
  10. if (!motionName && animationName) {
  11. motionName = "".concat(prefixCls, "-").concat(animationName);
  12. }
  13. return motionName;
  14. }
  15. // =============================== Offset ===============================
  16. function getScroll(w, top) {
  17. var ret = w["page".concat(top ? 'Y' : 'X', "Offset")];
  18. var method = "scroll".concat(top ? 'Top' : 'Left');
  19. if (typeof ret !== 'number') {
  20. var d = w.document;
  21. ret = d.documentElement[method];
  22. if (typeof ret !== 'number') {
  23. ret = d.body[method];
  24. }
  25. }
  26. return ret;
  27. }
  28. function offset(el) {
  29. var rect = el.getBoundingClientRect();
  30. var pos = {
  31. left: rect.left,
  32. top: rect.top
  33. };
  34. var doc = el.ownerDocument;
  35. var w = doc.defaultView || doc.parentWindow;
  36. pos.left += getScroll(w);
  37. pos.top += getScroll(w, true);
  38. return pos;
  39. }