SVGアニメーション – javascriptを使う(4) – stroke-width 要素の動的変化
アニメーションとして取り扱えるSVGのプロパティの stroke-width を試してみます。
下記のサンプルを用意しました。
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>テストHTML</title> <style> #recttest { stroke: #000; } </style> </head> <body> <svg xmlns="http://www.w3.org/2000/svg" width = "500" height = "250" viewBox = "0 0 500 250" > <rect id ="recttest" x ="10" y ="10" width ="100" height ="100" fill ="#ccc" /> </svg> <script> let width_value = 0; let millisecond = 100; let dom_rect = document.querySelector("#recttest"); setInterval(() => { dom_rect.setAttribute('stroke-width', width_value); if (width_value > 20) { width_value = 0; } width_value += 1; }, millisecond) </script> </body> </html>
画面にアクセスすると、SVGのrect要素が出力されます。
javascriptによる stroke-width 要素の動的変更で、rectの枠線の幅が動的に変化することが確認できます。