var animation1 = document.getElementById("forward") function forwardSVG(){ animation1.beginElement() } var animation2 = document.getElementById("middle") function middleSVG(){ animation2.beginElement() }
var animation3 = document.getElementById("back") function backSVG(){ animation3.beginElement() }
Я пытался спрятать красный круг за пределы холста перемещением его влево cx="-18". Но это не помогло, красный круг стал перемещаться во время анимации выше пути.
var animation1 = document.getElementById("forward") function forwardSVG(){ animation1.beginElement() } var animation2 = document.getElementById("middle") function middleSVG(){ animation2.beginElement() }
var animation3 = document.getElementById("back") function backSVG(){ animation3.beginElement() }
Как добиться исчезновения круга из левого верхнего угла холста SVG до начала анимации? UPDATE 16.12.2019 Благодарю всех, кто откликнулся на решение фундаментальной проблемы SVG.
Но у каждого решения, на мой взгляд, есть те или иные недочёты: Решения с помощью команд SVG: viewBox, translate имеют ограничения по размерам холста. При других размерах возможна подрезка траектории движения или объекта движения. Решения JS имеют объемный код и вмешиваются в процесс анимации SVG Смотрите в сторону сокрытия шарика до начала анимации средствами CSS,JS Код должен быть минимальным по объему и быть универсальным при любых значениях холста SVG. Принимаются дополнительные ответы в новых постах, от тех участников, которые уже ответили. А также приветствуются новые ответы от новых участников.
Ответ в лоб
class SvgAnimation { constructor(node) { this.node = node