Считывание местоположения мышки

Рейтинг: 0Ответов: 1Опубликовано: 01.12.2014

Есть код:

$('#a1').mousedown(function(){
$(this).mousemove(function(e){
    s_mouse_y = e.clientY;
    $('#a3').text(s_mouse_y);
});
});

Действие mousemove сохраняется, когда я отпускаю кнопку мыши. Как исправить?

Обновление

Хочу, чтобы при нажатии считывалось местоположение мышки, а при ее отпускании прекращалось.

Ответы

▲ 1

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

var active = false;

$('#a1').mousemove(function(e){
    if(active) {
        s_mouse_y = e.clientY;
        $('#a3').text(s_mouse_y);
    }
}).mousedown(function(){
    active = true;
}).mouseup(function() {
    active = false;
});