Guest User

Untitled

a guest
Sep 20th, 2018
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.31 KB | None | 0 0
  1. // HTML -------------->
  2.  
  3. <button class="mouse-cursor-gradient-tracking">
  4. <span>Hover me</span>
  5. </button>
  6.  
  7. // CSS -------------->
  8.  
  9. .mouse-cursor-gradient-tracking {
  10. position: relative;
  11. background: #2379f7;
  12. padding: 0.5rem 1rem;
  13. font-size: 1.2rem;
  14. border: none;
  15. color: white;
  16. cursor: pointer;
  17. outline: none;
  18. overflow: hidden;
  19. }
  20. .mouse-cursor-gradient-tracking span {
  21. position: relative;
  22. }
  23. .mouse-cursor-gradient-tracking::before {
  24. --size: 0;
  25. content: '';
  26. position: absolute;
  27. left: var(--x);
  28. top: var(--y);
  29. width: var(--size);
  30. height: var(--size);
  31. background: radial-gradient(circle closest-side, pink, transparent);
  32. transform: translate(-50%, -50%);
  33. transition: width .2s ease, height .2s ease;
  34. }
  35. .mouse-cursor-gradient-tracking:hover::before {
  36. --size: 200px;
  37. }
  38. JavaScript
  39. var btn = document.querySelector('.mouse-cursor-gradient-tracking')
  40. btn.onmousemove = function (e) {
  41. var x = e.pageX - btn.offsetLeft
  42. var y = e.pageY - btn.offsetTop
  43. btn.style.setProperty('--x', x + 'px')
  44. btn.style.setProperty('--y', y + 'px')
  45. }
  46.  
  47. // JS -------------->
  48.  
  49. var btn = document.querySelector('.mouse-cursor-gradient-tracking')
  50. btn.onmousemove = function (e) {
  51. var x = e.pageX - btn.offsetLeft
  52. var y = e.pageY - btn.offsetTop
  53. btn.style.setProperty('--x', x + 'px')
  54. btn.style.setProperty('--y', y + 'px')
  55. }
Add Comment
Please, Sign In to add comment