jQuery鼠标事件 – mousemove事件

用交互操作中,经常需要知道用户是否有移动的操作。基于移动的机制可以做出拖动、拖拽一系列的效果出来。针对移动事件,jQuery提供了一个mousemove的快捷方法可以监听用户移动的的操作。

使用上非常简单:

方法一:$ele.mousemove()

绑定$ele元素,不带任何参数一般是用来指定触发一个事件,用的比较少

<div id="test">点击触发<div>
$("ele").mousemove(function(){
alert('触发指定事件')
})
$("#text").click(function(){
$("ele").mousemove()  //指定触发事件 
});

 

方法二:$ele.mousemove( handler(eventObject) )

绑定$ele元素,每次$ele元素触发点击操作会执行回调 handler函数

这样可以针对事件的反馈做很多操作了

<div id="test">滑动触发<div>
$("#text").mousemove(function() {
//this指向 div元素 
});

 

方法三:$ele.mousemove( [eventData ], handler(eventObject) )

使用与方法二一致,不过可以接受一个数据参数,这样的处理是为了解决不同作用域下数据传递的问题

<div id="test">点击触发<div>
$("#text").mousemove(11111,function(e) {
//this指向 div元素
//e.date  => 11111 传递数据
});

 

mousemove事件触发需要以下几点:

  • mousemove事件是当鼠标指针移动时触发的,即使是一个像素
  • 如果处理器做任何重大的处理,或者如果该事件存在多个处理函数,这可能造成浏览器的严重的性能问题

发表评论

电子邮件地址不会被公开。 必填项已用*标注