mouseup()

为 JavaScript 的"mouseup"事件绑定一个处理函数,或者触发元素上的该事件。

.mouseup(handler(eventObject))
  • handler(eventObject) 类型:Function() 。每次事件触发时会执行的函数。
.mouseup([eventData ], handler(eventObject))
  • eventData 类型: PlainObject 。一个对象,它包含的数据键值对映射将被传递给事件处理程序。
  • handler(eventObject) 类型:Function() 。每次事件触发时会执行的函数。
.mouseup()
  • 这个方法不接受任何参数。

这个方法的前两个用法是 .bind('mouseup', handler) 的快捷方式,第3个不带参数的用法是 .trigger('mouseup') 的快捷方式。

当鼠标指针在元素内,并且鼠标按键被释放时, mouseup 事件就会被触发,任何HTML元素都可以接受此事件。

举例来说,请看下面的HTML:

<div id="target">
  Click here
</div>
<div id="other">
  Trigger the handler
</div>
<div id="log1"></div>

这个事件处理程序可以绑定到任意 <div> :

$('#target').mouseup(function() {
  alert('Handler for .mouseup() called.');
});

现在,如果我们点击这个元素,警报显示:

Handler for .mouseup()called.

我们也可以通过点击其它元素,手动触发另一个元素上的该事件:

$('#other').click(function() {
  $('#target').mouseup();
});

效果如下

Move here
Trigger the handler

如果用户在一个元素上按下鼠标按键,并且拖动鼠标离开这个元素,然后释放鼠标键,这仍然是算作 mouseup 事件。在大多数的用户界面,这个动作的顺序被视为一个“取消”的按键,并不作为 click 事件来看待。除非在特殊情况下,我们真正关注的是 mouseup 事件。

Additional Notes(其他注意事项):

  • .mouseup() 方法只是作为 .on("mouseup", handler) 的一个速记写法,移除该事件可以使用 .off("mouseup")

例子

当MouseUp和MouseDown事件触发时显示文本时。

<!DOCTYPE html>
<html>
<head>
  <script src="./static/js/jquery-3.5.0.js"></script>
</head>
<body>
  <p>Press mouse and release here.</p>
 
<script>
    $("p").mouseup(function(){
      $(this).append('<span style="color:#F00;">Mouse up.</span>');
    }).mousedown(function(){
      $(this).append('<span style="color:#00F;">Mouse down.</span>');
    });
 
</script>
 
</body>
</html>

Press mouse and release here.

上篇: mousedown()