如何在 JavaScript 中跟踪鼠标移动

Posted

技术标签:

【中文标题】如何在 JavaScript 中跟踪鼠标移动【英文标题】:How to track mouse movement in JavaScript 【发布时间】:2021-12-10 03:28:29 【问题描述】:

我有一个小问题,我不知道如何跟踪鼠标位置并在每次移动时更新函数,这是我要修改的代码以便更新;

function makeid() 
  var text = "";
  var possible = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";

  for (var i = 0; i < 8; i++)
    text += possible.charAt(Math.floor(Math.random() * possible.length));

  return text;


console.log(makeid());

希望有一位聪明人可以帮助我!

【问题讨论】:

update a function every time it moves 我不明白。你能解释一下你的要求吗? 您发布的代码与鼠标移动有什么关系?你想看看是不是人而不是电脑触发了这个功能?还有did you look? @BadPiggie 我的意思是,每次我的代码跟踪鼠标移动时,密码都会重新生成。 你调查过各种鼠标事件吗? developer.mozilla.org/en-US/docs/Web/API/Element/… 描述了鼠标移动事件 谢谢! @BadPiggie 帮助我!!!! 【参考方案1】:

@BadPiggie 我的意思是,每次我的代码跟踪鼠标移动时 密码重新生成。

正如你在评论中提到的,如果你想在鼠标移动时触发makeid,你可以在window上监听mousemove事件

function makeid() 
  var text = "";
  var possible = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";

  for (var i = 0; i < 8; i++)
    text += possible.charAt(Math.floor(Math.random() * possible.length));

  return text;


function mouseMoveEventHandler() 
  console.log(makeid());


window.addEventListener('mousemove', mouseMoveEventHandler);

【讨论】:

是否有可能增加延迟? @MaximShevchenko 看看developer.mozilla.org/en-US/docs/Web/API/setTimeout @MaximShevchenko 对于更多的辅助功能,如节流等,考虑使用lodash.com(可选) 我很想,但我没有 15 个代表。

以上是关于如何在 JavaScript 中跟踪鼠标移动的主要内容,如果未能解决你的问题,请参考以下文章

使用 Python 在 Selenium 中模拟鼠标移动

如何在 Javascript 中移动子元素时触发一次鼠标事件?

如何使用 javascript 计时来控制鼠标停止和鼠标移动事件

如何在javascript中检测鼠标加速?

如何使 JavaScript 画布元素随鼠标移动?

移动鼠标光标Javascript