.draggable сообщение об изменении, когда я нажимаю "Ctrl" - PullRequest
1 голос
/ 04 августа 2011

Я хотел бы показать (и изменить) сообщение на «копировать» или «переместить», пока я нажимаю Ctrl

JavaScript:

$('.draggable').draggable({ 
    revert: 'invalid',
    cursor: 'move',

    helper: function(event) {
        return $( '<div>'+$(this).text()+'<div class="ui-widget-header"></div>' );
    },              
    start: function(event) {
        if(event.ctrlKey) {
            $('.ui-widget-header').text('copy');
        } else {
            $('.ui-widget-header').text('move');
        }
    },      
    drag: function(event) {
        if(event.ctrlKey) {
            $('.ui-widget-header').text('copy');
        } else {
            $('.ui-widget-header').text('move');
        }
    },
    stop: function(event) {
        if(event.ctrlKey) {
            $('.ui-widget-header').text('copy');
        } else {
            $('.ui-widget-header').text('move');
        }
    }       
});

Этот скрипт работает, пока я тащу. Но это не так, если я начну или перестану перетаскивать.

  1. щелкните мышью на .draggable, затем нажмите Ctrl . ---> это не работает.
  2. перетащите мышь, затем нажмите Ctrl . ---> это работает.
  3. перетащите мышью и остановите его, затем нажмите Ctrl . ---> это не работает.

Это для сбрасывания

$('.show_twitterlist').droppable({

    hoverClass: "ui-state-hover",       
    drop: function(event, ui) {         

        if(event.ctrlKey) {
            intype = 'copy';
            ui.helper.html('<div>'+ui.draggable.text()+'<div class="ui-widget-header">copy</div>');
        } else {
            intype = 'moveto';
            ui.helper.html('<div>'+ui.draggable.text()+'<div class="ui-widget-header">move</div>');
        }

        ...
    }
});

Кто-нибудь может дать мне несколько идей? Спасибо за помощь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...