• 首页
  • vue
  • TypeScript
  • JavaScript
  • scss
  • css3
  • html5
  • php
  • MySQL
  • redis
  • jQuery
  • 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="https://www.lanmper.cn/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()