animateSVGAttr(context: SVGElement, propertyName: String, callback: PP.Delegate|function);
context. SVG-элемент, у которой анимируется свойство;
propertyName. Наименование анимируемого свойства;
callback. Возвратная функция.
Метод animateSVGAttr воспроизводит анимацию атрибута SVG-элемента с текущими параметрами.
Для выполнения примера необходимо наличие на странице экземпляра класса Animation с наименованием «animation» (см. «Конструктор Animation»). Создадим и разместим в текстовой области SVG-элемент, содержащий круг со сплошной заливкой красного цвета:
// Создадим текстовую область
var textArea = new PP.Ui.TextArea();
// Добавим данную область в документ
textArea.addToNode(document.body);
// Создадим анимацию
var animation = new PP.Ui.Animation({
Context: textArea, // Объект, свойство которого будет меняться
PropertyName: "Style",
Duration: 2000, // Длительность анимации в миллисекундах
Start: 10, // Начальный шаг анимации
End: 80 // Последний шаг анимации
});
// Получим DOM-вершину текстовой области
var domNode = textArea.getDomNode();
// Создадим SVG-элемент, содержащий красный круг
var svg = document.createElementNS("http://www.w3.org/2000/svg", "svg");
var circle = document.createElementNS("http://www.w3.org/2000/svg", "circle");
circle.setAttribute("cx", "100");
circle.setAttribute("cy", "100");
circle.setAttribute("r", "40");
circle.setAttribute("fill", "red");
svg.appendChild(circle);
// Разместим в текстовой области красный круг
domNode.appendChild(svg);
// Изменим ширину и высоту текстовой области
textArea.setStyle("width: 200px; height: 200px");
В результате выполнения примера был создан и размещён в текстовой области SVG-элемент, содержащий круг со сплошной заливкой красного цвета с радиусом, равным 40 пикселям, и с отступами от верхнего левого края, равными 100 пикселям:

Далее воспроизведём анимацию изменения радиуса данного круга от 10 до 80 пикселей в течение двух секунд:
animation.animateSVGAttr(svg.childNodes[0], "r");
В результате выполнения примера в течение двух секунд была воспроизведена анимация изменения радиуса круга от 10 до 80 пикселей. После анимации круг стал выглядеть следующим образом:

См. также: