Advertisement
CarterFromSL

Cursor Detection JS

Dec 1st, 2021
1,744
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
jQuery 3.39 KB | None | 0 0
  1. jQuery(document).ready(function($) {
  2.   $('body').mousemove(function(e) {
  3.     $('#cursor').css('left', e.clientX - 20).css('top', e.clientY + 7);
  4.   });
  5. });
  6.  
  7.  
  8. document.addEventListener("DOMContentLoaded", function () {
  9.     var cursor = document.getElementById('cursor');
  10.    
  11.     var inputs = document.querySelectorAll(
  12.         'input[type="text"], input[type="email"], input[type="tel"], input[type="password"], input[type="search"], input[type="url"], textarea, datalist, .c-text'
  13.     );
  14.     var links = document.querySelectorAll(
  15.         'a, button, label, input, input[type="button"], input[type="submit"], summary, select, .c-link'
  16.     );
  17.    
  18.     var hidecur = document.querySelectorAll("iframe, .c-hidden");
  19.     var targetcur = document.querySelectorAll(".c-target");
  20.     var movecur = document.querySelectorAll(".c-move");
  21.     var stopcur = document.querySelectorAll(".c-stop");
  22.     var zoomincur = document.querySelectorAll(".c-zoom-in");
  23.     var zoomoutcur = document.querySelectorAll(".c-zoom-out");
  24.     var unhidecur = document.querySelectorAll("body");
  25.  
  26.   var i = links.length;
  27.   for (i = 0; i < links.length; i++) {
  28.     links[i].addEventListener("mouseenter", addCursor);
  29.     links[i].addEventListener("mouseleave", addDefault);
  30.   }
  31.  
  32.   var i = inputs.length;
  33.   for (i = 0; i < inputs.length; i++) {
  34.     inputs[i].addEventListener("mouseenter", addInput);
  35.     inputs[i].addEventListener("mouseleave", addDefault);
  36.   }
  37.  
  38.   var i = hidecur.length;
  39.   for (i = 0; i < hidecur.length; i++) {
  40.     hidecur[i].addEventListener("mouseenter", addHide);
  41.     hidecur[i].addEventListener("mouseleave", addDefault);
  42.   }
  43.    
  44.   var i = unhidecur.length;
  45.   for (i = 0; i < unhidecur.length; i++) {
  46.     unhidecur[i].addEventListener("mouseenter", addDefault);
  47.     unhidecur[i].addEventListener("mouseleave", addHide);
  48.   }
  49.    
  50.   var i = targetcur.length;
  51.   for (i = 0; i < targetcur.length; i++) {
  52.     targetcur[i].addEventListener("mouseenter", addTarget);
  53.     targetcur[i].addEventListener("mouseleave", addDefault);
  54.   }
  55.  
  56.   var i = movecur.length;
  57.   for (i = 0; i < movecur.length; i++) {
  58.     movecur[i].addEventListener("mouseenter", addMove);
  59.     movecur[i].addEventListener("mouseleave", addDefault);
  60.   }
  61.  
  62.   var i = stopcur.length;
  63.   for (i = 0; i < stopcur.length; i++) {
  64.     stopcur[i].addEventListener("mouseenter", addStop);
  65.     stopcur[i].addEventListener("mouseleave", addDefault);
  66.   }
  67.    
  68.   var i = zoomincur.length;
  69.   for (i = 0; i < zoomincur.length; i++) {
  70.     zoomincur[i].addEventListener("mouseenter", addZoomIn);
  71.     zoomincur[i].addEventListener("mouseleave", addDefault);
  72.   }
  73.  
  74.   var i = zoomoutcur.length;
  75.   for (i = 0; i < zoomoutcur.length; i++) {
  76.     zoomoutcur[i].addEventListener("mouseenter", addZoomOut);
  77.     zoomoutcur[i].addEventListener("mouseleave", addDefault);
  78.   }
  79.  
  80.   function addInput() {
  81.     cursor.className = "cursor-input";
  82.   }
  83.  
  84.   function addCursor() {
  85.     cursor.className = "cursor-active";
  86.   }
  87.  
  88.   function addHide() {
  89.     cursor.className = "cursor-hidden";
  90.   }
  91.    
  92.   function addStop() {
  93.     cursor.className = "cursor-stop";
  94.   }
  95.  
  96.   function addTarget() {
  97.     cursor.className = "cursor-target";
  98.   }
  99.  
  100.   function addMove() {
  101.     cursor.className = "cursor-move";
  102.   }
  103.  
  104.   function addZoomIn() {
  105.     cursor.className = "cursor-zoom-in";
  106.   }
  107.  
  108.   function addZoomOut() {
  109.     cursor.className = "cursor-zoom-out";
  110.   }
  111.    
  112.   function addDefault() {
  113.     cursor.className = "cursor";
  114.   }
  115.  
  116. });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement