Изменить CSS элемента в после события Move сортировки Knockout
Я хочу изменить CSS элемента после его перетаскивания ( afterMove
событие) в контейнер, используя сортируемую библиотеку нокаута. Я попытался получить идентификатор элемента div, содержащего элемент, и изменить его CSS в afterMove
событие как:
document.getElementById('container').style.backgroundColor="yellow";
Приведенный выше код не меняет цвет перемещенного элемента, но самый первый элемент в наблюдаемом массиве элементов. Я приложил скрипач JS текущей ситуации. Является ли их способ доступа к div
ID элемента, который был перемещен, так что изменяется только CSS этого конкретного элемента?
1 ответ
Решение
Добавьте перемещенную собственность своим студентам
var Student = function(id, name, gender) {
this.id = id;
this.name = ko.observable(name);
this.gender = gender;
this.moved = ko.observable(false);
};
Привязать CSS для элементов, чтобы использовать его:
<div id="container" style="background-color: white; margin:4px;">
<p data-bind="text: name, css:{two:moved}"></p>
</div>
Установите свойство после переезда:
this.updateLastAction = function(arg) {
arg.targetParent()[arg.targetIndex].moved(true);
};