Лучший способ поймать мышку вне элемента mousedown

$('#clickableElement').bind({
    mousedown: function(e)
    {
        console.log('mousedown on element');

        $(document).bind('mouseup',function(e){
            console.log('mouseup caught');

            //Do some magic here 

            $(this).unbind('mouseup');
        });

    },
    mouseup:function(e)
    {
        //mouseup within element, no use here.
    }
});

я пытаюсь поймать событие mouseup из mousedown, который 's выпущен внутри или снаружи элемента. Этот код почти работает, но проблема в том, чтобы отменитьMouseUp»), который отменяет привязку других скриптов, прикрепленных к событию mouseup (jqueryui). Если unbind () не установлен, то код складывается внутри события mouseup и вызывается x количество раз, где x - это время, которое выМы находимся в собственности.

Маршрут 1: существует ли какая-то функция самоуничтожения, которая вызывает себя один раз и уничтожает?

Маршрут 2: любой способ скопировать / клонировать функцию mouseup до вставки кода, затем отсоединить, а затем установить как предыдущий?

В идеале яЯ хотел бы сохранить эту структуру кода для аккуратности, так как у меня много интерактивных элементов, поэтому привязка document.mouseup вне element.mousedown была бы грязной.

Вот'Скрипка, которую я забыл добавитьhttp://jsfiddle.net/9gFNk/

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

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