へ
$(function() {
$('[id^="sortable"]').sortable({
connectWith: '[id^="sortable"]',
helper: "clone",
appendTo: ".primary_container",
update: function() {
$('[id^="sortable"]').children().each(function(){
savePosition($(this).attr("id"));
});
}
});
});
function savePosition(id){
var el = $("#" + id);
var container = el.parent().attr("id");
var index = el.index();
localStorage.setItem(id, JSON.stringify({ container:container, index:index }));
}
function loadPosition(id){
var el = $("#" + id);
var position = JSON.parse(localStorage.getItem(id));
console.log(position);
var container = "#" + position.container;
var index = position.index;
if(index == 0){
$(container).prepend(el);
}else if($(container).children().eq(index - 1).length == 0){
$(container).append(el);
}else{
$(container).children().eq(index - 1).after(el);
}
}
$('[id^="sortable"]').children().each(function(){
loadPosition($(this).attr("id"));
});
リンクはそれを考え出しました。
localStorage.setItem(id, JSON.stringify({ container:container, index:index }));
そして
作業の変更を反映するためにポストを更新しました
var position = JSON.parse(localStorage.getItem(id));
に変更
var position = JSON.parse(localStorage.getItem('positions'));
に変更する必要が
localStorage.setItem('positions', $("#" + id).sortable("toArray"));
。
新しい作業フィドル。 https://jsfiddle.net/wagd0xg0/2/ – user3452747