2017-06-24 3 views
0

画像ドロップゾーンのターゲットのサイズを大きくして、ユーザーがドラッグしたときにドロップしてページを獲得できるようにするドロップされるイメージにランダムに調整し、そのドロップからイメージのオーダーのリストを取得します。ターゲットをもっと大きくしてイメージの情報を得るにはどうすればいいですか?イメージの情報は、ソース名のリストだけでもかまいません。ターゲットボックスを増やしてJquery-sortableから画像情報を取得

編集:アイテムをボックスにドラッグして、最初のものとして上がり、適切なキューでボックスに確実にドラッグできるようにターゲットボックスの範囲を広げます。 jQueryの - ソート可能なを使用して

var order; 
 
var adjustment; 
 

 
var group = $("ol.simple_with_animation").sortable({ 
 
    group: 'simple_with_animation', 
 
    pullPlaceholder: false, 
 
    // animation on drop 
 
    onDrop: function($item, container, _super) { 
 

 
    var $clonedItem = $('<li/>').css({ 
 
     height: 0 
 
    }); 
 
    $item.before($clonedItem); 
 
    $clonedItem.animate({ 
 
     'height': $item.height() 
 
    }); 
 

 
    $item.animate($clonedItem.position(), function() { 
 
     $clonedItem.detach(); 
 
     _super($item, container); 
 
    }); 
 
    var data = group.sortable("serialize").get(); 
 
    order = data[1]; 
 
    console.log(order); 
 
    }, 
 

 
    // set $item relative to cursor position 
 
    onDragStart: function($item, container, _super) { 
 
    var offset = $item.offset(), 
 
     pointer = container.rootGroup.pointer; 
 

 
    adjustment = { 
 
     left: pointer.left - offset.left, 
 
     top: pointer.top - offset.top 
 
    }; 
 

 
    _super($item, container); 
 
    }, 
 
    onDrag: function($item, position) { 
 
    $item.css({ 
 
     left: position.left - adjustment.left, 
 
     top: position.top - adjustment.top 
 
    }); 
 
    }, 
 
    serialize: function(parent, children, isContainer) { 
 
    return isContainer ? children.join() : parent.text(); 
 
    }, 
 
    tolerance: 6, 
 
    distance: 10 
 
});
body.dragging, 
 
body.dragging * { 
 
    cursor: move !important; 
 
} 
 

 
.dragged { 
 
    position: absolute; 
 
    opacity: 0.5; 
 
    z-index: 2000; 
 
} 
 

 
ol.simple_with_animation li.placeholder { 
 
    position: relative; 
 
    /** More li styles **/ 
 
} 
 

 
ol.simple_with_animation li.placeholder:before { 
 
    position: absolute; 
 
    /** Define arrowhead **/ 
 
} 
 

 
#GamblerOrderSource, 
 
#GamblerOrderTarget { 
 
    min-height: 50px; 
 
    margin: 0px 25px 10px 0px; 
 
    padding: 2px; 
 
    border-width: 1px; 
 
    border-style: solid; 
 
    -webkit-border-radius: 3px; 
 
    -moz-border-radius: 3px; 
 
    border-radius: 3px; 
 
    list-style-type: none; 
 
    list-style-position: inside; 
 
    display: inline-block; 
 
} 
 

 
#GamblerOrderSource { 
 
    border: 2px dashed #f8e0b1 !important; 
 
    background-color: #fefcf5 !important; 
 
} 
 

 
#GamblerOrderTarget { 
 
    border: 2px dashed #add38d !important; 
 
    background-color: #f6fbf4 !important; 
 
} 
 

 
#GamblerOrderSource li { 
 
    background-color: #fcf8e3; 
 
    border: 1px solid #fbeed5; 
 
    color: #c09853; 
 
} 
 

 
#GamblerOrderTarget li { 
 
    background-color: #ebf5e6; 
 
    border: 1px solid #d6e9c6; 
 
    color: #468847; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script> 
 
<script src="//cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/js/bootstrap.min.js"></script> 
 
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-sortable/0.9.13/jquery-sortable-min.js"></script> 
 
<form id="orderform" method='POST'> 
 
    <div id='GamblerOrderSource'> 
 
    <ol class='simple_with_animation'> 
 
    <li id="image_first"><img src="http://ec2-54-244-61-189.us-west-2.compute.amazonaws.com//static/DEAD.ICO"></li> 
 
<li id="image_second"><img src="http://ec2-54-244-61-189.us-west-2.compute.amazonaws.com//static/DEAD.ICO"></li> 
 
    <li id="image_third"><img src="http://ec2-54-244-61-189.us-west-2.compute.amazonaws.com//static/DEAD.ICO"></li> 
 
<li id="image_fourth"><img src="http://ec2-54-244-61-189.us-west-2.compute.amazonaws.com//static/DEAD.ICO"></li> 
 
    </ol> 
 
    </div> 
 
    <div id='GamblerOrderTarget'> 
 
    <ol class='simple_with_animation'> 
 
    </ol> 
 
    </div> 
 
    <input type="submit" value="Continue" /> 
 
</form>

答えて

0

私は単純に次のようにそれを修正:

.dragged { 
    position: absolute; 
    opacity: 0.5; 
    z-index: 2000; 
} 
ol.simple_with_animation li.placeholder { 
    position: relative; 
    /** More li styles **/ 
    font-size: 200%; /* or whatever */ 
} 
関連する問題