インベントリの jquery UI ドラッグ アンド ドロップがあります。それは機能しますが、在庫にすでに20個のアイテムがある場合(満杯の場合)、発生しないようにしたいです。
私はjavascript/jqueryが得意ではありません。これを行うためにコードを修正する方法がわかりません。在庫がいっぱいになったら元の位置に戻してほしい。
ドラッグ/ドロップに使用している関数は次のとおりです
function itemInSpot(drag_item,spot) {
// this is my count. i don't want it to drop an item if it's 20 or more.
var inv_count = parseInt(<? echo count($inv_item) ?>, 10);
var oldSpotItem = $(spot).find('img');
oldSpotItem.appendTo('#inventory').draggable({ revert: 'invalid' });
var item = $('<img />');
drag_item.empty().remove();
item.attr('src',drag_item.attr('src')).attr('title',drag_item.attr('title')).attr('id',drag_item.attr('id')).attr('class',drag_item.attr('class')).appendTo(spot).draggable({ revert: 'invalid' });
}
これは、ページロードで設定された関数を実行するコードです。
$(document).ready(function() {
$(".weapons,.shield").draggable({ stack: "div", revert: 'invalid'});
$('#inventory').droppable();
$("#weapon_spot").droppable({ accept: '.weapons'})
$('#shield_spot').droppable({ accept: '.shield'});
$('#weapon_spot,#shield_spot,#inventory').bind('drop', function(ev,ui) { itemInSpot(ui.draggable,this); });
});
では、どうすれば a を追加できif inv_count > 19 then revert item back to it's original position
ますか?