Tengo un botón que mueve un elemento de una posición en un array observable. Lo estoy haciendo de la siguiente manera. Sin embargo, el inconveniente es que las categorías() [índice] se eliminan de la matriz, descartando cualquier manipulación de DOM (mediante la validación de jQuery en mi caso) en ese nodo.¿Cómo puedo intercambiar dos elementos en una matriz observable?
¿Hay alguna manera de intercambiar dos elementos sin usar una variable temporal para preservar el nodo DOM?
moveUp: function (category) {
var categories = viewModel.categories;
var length = categories().length;
var index = categories.indexOf(category);
var insertIndex = (index + length - 1) % length;
categories.splice(index, 1);
categories.splice(insertIndex, 0, category);
$categories.trigger("create");
}
muchas gracias, aquí está el ejemplo ** moveDown ** http: // stackoverflow.com/a/22348385/287084 – Orhaan