首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何检测鼠标水平移动(向左或向右移动)

问如何检测鼠标水平移动(向左或向右移动)
EN

Stack Overflow用户
提问于 2016-01-06 00:03:04
回答 1查看 2.3K关注 0票数 2

请您看看这个演示,让我知道只有当鼠标向左或向右移动时,我才能检测到mousemove()吗?

基本上,现在发生的事情是jquery检测mousemove事件,即使鼠标从上到下或向下移动到顶部,但我需要禁用它,并检测鼠标水平移动的事件。

​

代码语言:javascript
复制
$( "#target" ).mousemove(function( event ) {
  var msg = "Handler for .mousemove() called at ";
  msg += event.pageX + ", " + event.pageY;
  $( "#log" ).append( "<div>" + msg + "</div>" );
});
代码语言:javascript
复制
#target{width:500px; height:120px; background:yellow;}
代码语言:javascript
复制
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="target">
  Move here
</div>
<div id="other">
  Trigger the handler
</div>
<div id="log"></div>

​

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-01-06 00:07:23

记录鼠标的最后一个位置,如果水平位置已经更改,请运行代码。

​

代码语言:javascript
复制
var lastX = 0;

$( "#target" ).mousemove(function( event ) {
  if(lastX != event.pageX) {
    var msg = "Handler for .mousemove() called at ";
    msg += event.pageX + ", " + event.pageY;
    $( "#log" ).append( "<div>" + msg + "</div>" );
  }
  lastX = event.pageX;
});
代码语言:javascript
复制
#target{width:500px; height:120px; background:yellow;}
代码语言:javascript
复制
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="target">
  Move here
</div>
<div id="other">
  Trigger the handler
</div>
<div id="log"></div>

​

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34623457

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档