Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
jquerydroppable选项会破坏该元素的可拖动行为_Jquery_Drag And Drop - Fatal编程技术网

jquerydroppable选项会破坏该元素的可拖动行为

jquerydroppable选项会破坏该元素的可拖动行为,jquery,drag-and-drop,Jquery,Drag And Drop,如果我为可拖放的可拖放文件指定accept选项,这将破坏该可拖放文件的可拖放行为 为了防止这些可拖动的可拖放文件嵌套,我将accept选项指定为只属于可拖放文件的类。我使用$'div.link\u drop\u box'、$+card\u id.droppable{accept:'.link'};来实现这一点;。下面是javascript,我在其中指定了可拖放div // Define more LinkCard options $('#'+card_id).css('width

如果我为可拖放的可拖放文件指定accept选项,这将破坏该可拖放文件的可拖放行为

为了防止这些可拖动的可拖放文件嵌套,我将accept选项指定为只属于可拖放文件的类。我使用$'div.link\u drop\u box'、$+card\u id.droppable{accept:'.link'};来实现这一点;。下面是javascript,我在其中指定了可拖放div

    // Define more LinkCard options
    $('#'+card_id).css('width',350);
    $('#'+card_id).css('height',250);
    $('#'+card_id).resizable();
    $('#'+card_id).draggable();
    $('#'+card_id).draggable("option", "handle", '.linkcard_header');
    $('#'+card_id+' p').editableText();
    $('#'+card_id).draggable({ stop: function(event, ui) { update_linkcard_xml(card_id) } });

    // Make droppable
    $('div.link_drop_box', $('#'+card_id)).droppable({ accept: '.link' });
    $('div.link_drop_box', $('#'+card_id)).droppable({
        drop: function( event, ui ) {
            var $item = ui.draggable;
            $item.fadeOut(function() {

            $item.css( {"left":"", "top":"", "bottom":"", "right":"" }).fadeIn();
        }); 
        $item.appendTo( this );
        }
    });

现在,可放下的潜水器不能再拖了。奇怪的是,有几个这样的可放下的div。第一个仍然可以拖动,其他的则不行。什么会导致accept选项破坏可拖动行为。

发现问题。应该将所有选项放在一个可拖放的方法中。下面的工作

    $('div.link_drop_box', $('#'+card_id)).droppable({
       drop: function( event, ui ) {
          var $item = ui.draggable;
          $item.fadeOut(function() {
             $item.css( {"left":"", "top":"", "bottom":"", "right":"" }).fadeIn();
          }); 
          $item.appendTo( this );
          /* update_links_xml("card_id"); */
       },
       out: function( event, ui ) {
          /* update_links_xml("card_id"); */ 
       },
       accept: ".link",
     });