Свертывание группы SVG с помощью Raphael.js - PullRequest
1 голос
/ 24 апреля 2019

Я работаю с svg через Raphael.js, и мне нужно свернуть SVG-группу и показать ее при клике.

Я попытался использовать атрибут видимости SVG-группы и изменить его при нажатии., но это нормально с сокрытием, но оно не появляется обратно;

 const GroupCollapse = function(paper) {
            const $svg = paper.canvas; // #mysvg is SVG doc
            const g = document.createElementNS('http://www.w3.org/2000/svg', 'svg');
            $svg.appendChild(g);

            this.paper = paper;
            this.node = g;
            this.attrs = {};
            this._ = {};
            this.add = function (el) {
                g.appendChild(el.node);
            };
        };
        GroupCollapse.prototype = Raphael.el;

        Raphael.fn.groupCollapse = function(... args) {
            return new GroupCollapse(this, ... args)
        };

Это моя реализация пользовательской группы.Затем я создаю его следующим образом:

let gc = paper.groupCollapse();

Я делаю его «скрытым», и у меня есть функция, позволяющая сделать его видимым, который не работает.

function showCollapsed() {
            gc.visibility = "visible";
}

Я хочу иметьSVG группа кругов Рафаэля, которая сворачивается в один круг и разворачивается при нажатии на этот круг.Не могли бы вы помочь мне и показать лучший способ сделать это.Спасибо!

...