Как заставить мышь выстрелить после завершения перемещения мыши

Кажется, что события mouseup запускаются только тогда, когда они не связаны с движением мыши. Другими словами, нажмите на левую кнопку мыши и отпустите, и mouseup будет запущен. Но если вы перетащите изображение, а затем отпустите, mouseup не будет запущен. Вот пример, который показывает это поведение:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<div id="Out">
    <img id="Img" src="http://sstatic.net/so/img/logo.png" width=500>
</div>
<script language=JavaScript>
    $(function() {
        $(document).bind("mouseup",function() {alert("UP");});
        //$("#Out").bind("mouseup",function() {alert("UP");});
        //$("#Img").bind("mouseup",function() {alert("UP");});
    });
</script>

Если вы загрузите это и нажмете и отпустите, появится сообщение «UP». Однако, если вы перетащите, а затем отпустите, UP не будет запущен.

Как я могу запустить mouseup, когда mousemove завершен, или как я могу проверить событие mousemove, чтобы определить, что левая кнопка мыши отключена?

Ответы на вопрос(7)

Ваш ответ на вопрос