SVGAnimatedLength: animVal プロパティ

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

animValSVGAnimatedLength インターフェイスのプロパティで、 SVG の列挙型の現在の値を表します。アニメーションがない場合は、 baseVal と同じ値になります。

SVGLength で、アニメーション中の現在の値になります。

html
<svg
  xmlns="http://www.w3.org/2000/svg"
  viewBox="0 0 100 100"
  width="200"
  height="200">
  <circle cx="50" cy="50" r="20" fill="gold" id="circle">
    <animate
      attributeName="r"
      values="20;25;10;20"
      dur="8s"
      repeatCount="indefinite" />
  </circle>
</svg>
<pre id="log"></pre>
js
const circle = document.getElementById("circle");
const log = document.getElementById("log");

function displayLog() {
  const animValue = circle.r.animVal.value;
  const baseValue = circle.r.baseVal.value;
  log.textContent = `The 'circle.r.animVal' is ${animValue}.\n`;
  log.textContent += `The 'circle.r.baseVal' is ${baseValue}.`;
  requestAnimationFrame(displayLog);
}
displayLog();

仕様書

Specification
Scalable Vector Graphics (SVG) 2
# __svg__SVGAnimatedLength__animVal

ブラウザーの互換性

関連情報