Показать сообщение отдельно
  #1 (permalink)  
Старый 19.12.2012, 14:43
Профессор
Отправить личное сообщение для tsigel Посмотреть профиль Найти все сообщения от tsigel
 
Регистрация: 12.12.2012
Сообщений: 1,398

Остановить выполнение функции
Здравствуйте, у меня есть книжная полка и книги на ней. По событию mousedown книгу можно таскать по полке (пример можно посмотреть тут, я решил переписать свой скрипт на объектно ориентированный и без jQuery ui).

Есть событие mousedown, по которому начинает выполняться метод:
book.mousedown(function(e) {
        dragObject  = this;
        book.move(e, dragObject);
    })

Есть метод:
book.move = function (e, dragObject) {
        var delta =  event.pageX - parseInt($('#shelf_container').css('margin-left'))- parseInt($('#content').css('margin-left')) - parseInt($(dragObject).css('left'));
        document.onmousemove = mouseMove;
        console.log($(dragObject));
        function mouseMove(event){
            var x = document.getElementById('mouseX').value = event.pageX - parseInt($('#shelf_container').css('margin-left'))- parseInt($('#content').css('margin-left'));
            x = x - delta;
            console.log(x);
            $(dragObject).css('left', x);

        }
    }

Как на событие mouseup остановить выполнение метода book.move?

Спасибо!
Ответить с цитированием