Mat*_*att 60
更新:
因此,看起来如果您的鼠标不再位于绑定onmouseup的元素上,它将不会看到鼠标注册事件.有意义的是,当你停下来思考它时,但当mousedown事件发生在元素上时,我们期望,作为UI用户,它知道它何时被释放(即使它不在元素上).
因此,为了解决这个问题,我们实际上在文档级别上检测了mouseup.
var clicking = false;
$('.selector').mousedown(function(){
clicking = true;
$('.clickstatus').text('mousedown');
});
$(document).mouseup(function(){
clicking = false;
$('.clickstatus').text('mouseup');
$('.movestatus').text('click released, no more move event');
})
$('.selector').mousemove(function(){
if(clicking == false) return;
// Mouse click + moving logic here
$('.movestatus').text('mouse moving');
});
Run Code Online (Sandbox Code Playgroud)
我在jsbin上尝试了这个,它似乎工作.在这里查看:http://jsbin.com/icuso.要编辑它(请参阅JS和HTML),只需在URL的末尾标记"编辑". http://jsbin.com/icuso/edit.
Mo *_*ami 41
使用以下代码
$(element).mousemove(function(e){
if(e.which==1)
{
#do job
}
});
Run Code Online (Sandbox Code Playgroud)
更新:
对于某些浏览器,您可能希望使用此:
$(element).mousemove(function(e){
if(e.buttons==1)
{
#do job
}
});
Run Code Online (Sandbox Code Playgroud)
小智 7
我为音频音量控制器做了以下操作:
$('#control-vol').bind('mousedown', function(e){
$('#control-vol').bind('mousemove', function(e){
var volumen = e.pageX - this.offsetLeft;
$('#barra-vol').width(volumen + 'px');
$('audio')[7].volume = volumen/50;
});
$('#control-vol').bind('mouseup',function(){
$('#control-vol').unbind('mousemove')
});
});
Run Code Online (Sandbox Code Playgroud)
Noa*_*dja -3
或许:
$('input').mousedown(function{
$('input').mousemove({
etc
});
});
Run Code Online (Sandbox Code Playgroud)
但出于某种原因,我认为你已经尝试过了..