【发布时间】:2016-11-01 11:46:21
【问题描述】:
我需要在 jQuery 中检测鼠标按下事件。我看到了这个question 和it's answer。这正是我需要的,因为这里只有当鼠标被按下和移动时才会发生动作。它不是点击事件,它是鼠标按下和移动的组合事件。
我不明白如何实现它。目前我使用以下代码旋转 div,但此代码基于 mousedown 事件:
var rotation = 0;
jQuery.fn.rotate = function(degrees) {
$(this).css({'transform' : 'rotate('+ degrees +'deg)'});
};
$('.resizeButton').on("mousedown", function(e) {
var startX = e.pageX;
$(document).mousemove(function(e){
rotation = startX - e.pageX;
$('.test').rotate(rotation);
});
});
$('.resizeButton').on("mouseup", function(){
$(document).unbind( "mousemove" );
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="test">Hello
<button class="resizeButton"> </button>
</div>
请帮助将其转换为鼠标按下和移动事件,以便用户可以通过按下该按钮轻松调整旋转并旋转到任何方向并释放鼠标按下。当用户释放鼠标按下时,需要在特定的鼠标按下释放点上设置旋转。
【问题讨论】:
-
你查看过 jquery 的 MouseMove 事件吗? api.jquery.com/mousemove
-
谢谢。你能帮我在我当前的代码中实现它吗?。
标签: javascript jquery html dom