Vis.js Timeline - Как свернуть группу без вложенности
Я хотел бы иметь возможность свернуть или переключить видимость определенных групп на временной шкале, щелкнув название группы (или значок рядом с ним и т. Д.)
Все примеры, которые я видел для выполнения аналогичных функций, требуют использования вложенных групп, а затем свертывания группы, но вложенная модель не работает для наших данных, и мы хотим иметь возможность свернуть только одну за раз.
Я понял, как показать группу свернутой при инициализации, установив className, но я не понял, как переключать className на метке группы + строке на лету.
0 ответов
Я использую эти функции, чтобы удалить / показать все элементы в группе
function plannerCloseGroup(groupID){
// retrieve all items having a property group with value groupID
var itemsFiltered = items.get({
filter: function (item) {
return (item.group == groupID);
}
});
closedItems[groupID] = itemsFiltered;
items.remove(itemsFiltered);
$("#plannerMinus_" + groupID).addClass("hidden");
$("#plannerMinus_" + groupID).removeClass("display");
$("#plannerPlus_" + groupID).removeClass("hidden");
$("#plannerPlus_"+ groupID).addClass("display");
}
function plannerOpenGroup(groupID){
items.update(closedItems[groupID]);
$("#plannerMinus_" + groupID).addClass("display");
$("#plannerMinus_" + groupID).removeClass("hidden");
$("#plannerPlus_" + groupID).removeClass("display");
$("#plannerPlus_" + groupID).addClass("hidden");
delete closedItems[groupID];
}
closedItems - это глобальный массив
plannerMinus и PlannerPlus - это значки рядом с названием группы
Когда я определяю свои группы, у меня есть этот код в содержимом, где $employeeID также является моим groupID
'<span id="plannerPlus_'.$employeeID.'" class="hidden"><img src="images/planner-plus-grey.gif" width=10 height=10 onclick="plannerOpenGroup('.$employeeID.')"> </span><span id="plannerMinus_'.$employeeID.'" class="display"><img src="images/planner-minus.gif" width=10 height=10 onclick="plannerCloseGroup('.$employeeID.')"> </span>'