Я успешно использовал опцию STORE для сортируемой библиотеки js здесь: https://jsfiddle.net/6u78dmkg/.
var myel = document.getElementById("list");
Sortable.create(myel, {
group: "localStorage-example",
store: {
get: function (sortable) {
var order = localStorage.getItem(sortable.options.group.name);
return order ? order.split('|') : [];
},
set: function (sortable) {
var order = sortable.toArray();
localStorage.setItem(sortable.options.group.name, order.join('|'));
}
}
})
Я также успешно использовал опцию DISABLE для сортируемой библиотеки js здесь : https: https://jsfiddle.net/53dfrtvw/ со следующим кодом:
var sortable = Sortable.create(list);
switcher.onclick = function () {
var state = sortable.option("disabled"); // get
sortable.option("disabled", !state); // set
switcher.innerHTML = state ? 'disable' : 'enable';
};
Но мне не удается получить оба сразу: https://jsfiddle.net/x9m6c7ps/
var myel = document.getElementById("list");
Sortable.create(myel, {
group: "localStorage-example",
store: {
/**
* Get the order of elements. Called once during initialization.
* @param {Sortable} sortable
* @returns {Array}
*/
get: function (sortable) {
var order = localStorage.getItem(sortable.options.group.name);
return order ? order.split('|') : [];
},
/**
* Save the order of elements. Called onEnd (when the item is dropped).
* @param {Sortable} sortable
*/
set: function (sortable) {
var order = sortable.toArray();
localStorage.setItem(sortable.options.group.name, order.join('|'));
}
}
})
var sortable = Sortable.create(document.getElementById("list"));
var sortable = Sortable.create(list);
switcher.onclick = function () {
var state = sortable.option("disabled"); // get
sortable.option("disabled", !state); // set
switcher.innerHTML = state ? 'disable' : 'enable';
};
Будет лучше, если сначала появится DISABLE (STORE работает), но мне не удалось получить их оба одновременно. Я был бы очень осведомлен о том, почему они не будут работать вместе.