Здравствуйте.
Имеется:
<svg id="svg-image">
<path/>
<rect/>
<path/>
</svg>
Как через jquery посчитать длину всех path, которые входят в #svg-image?
Собственно, не могу понять как правильно дописать код, что ниже.
svg = $("#svg-image");
path = document.querySelector('path');
var pathLen = path.getTotalLength();
path.setAttribute('stroke-dasharray', pathLen);
===
обновил код, длина вычисляется, атрибут назначается. Но только для первого встречного path. Как это сделать для всех path в документе? А вообще - желательно, чтобы смотрел не в документ, а только в svg-элементы.
===
готовое решение для обработки всех path во всех svg. Без анимации, просто добавит в атрибуты длину пути.
var nS = 'http://www.w3.org/2000/svg';
var svgPaths = document.getElementsByTagNameNS(nS,'path');
for (var x = 0; x < svgPaths.length; x++) {
var path = svgPaths[x];
var pathDimensions = path.getTotalLength();
path.style.strokeDasharray = pathDimensions;
path.style.strokeDashoffset = pathDimensions;
};