Javascript - Track mouse position

后端 未结 11 1634
谎友^
谎友^ 2020-11-22 03:13

I am hoping to track the position of the mouse cursor, periodically every t mseconds. So essentially, when a page loads - this tracker should start and for (say) every 100 m

11条回答
  •  忘掉有多难
    2020-11-22 04:03

    ES6 based code:

    let handleMousemove = (event) => {
      console.log(`mouse position: ${event.x}:${event.y}`);
    };
    
    document.addEventListener('mousemove', handleMousemove);
    

    If you need throttling for mousemoving, use this:

    let handleMousemove = (event) => {
      console.warn(`${event.x}:${event.y}\n`);
    };
    
    let throttle = (func, delay) => {
      let prev = Date.now() - delay;
      return (...args) => {
        let current = Date.now();
        if (current - prev >= delay) {
          prev = current;
          func.apply(null, args);
        }
      }
    };
    
    // let's handle mousemoving every 500ms only
    document.addEventListener('mousemove', throttle(handleMousemove, 500));
    

    here is example

提交回复
热议问题