如何使svg路径可移动?

时间:2018-09-13 06:23:06

标签: javascript html5 svg

我创建了一个SVG图像。您可以在这里看到它:

jsfiddle.net/o2n56fyb/5/

在此SVG图像中,点线很少。您可以在这里看到它:

http://creativeartbd.com/demo/blockchain/

现在,我想使那些点线像连续运行一样可移动。那可能吗?如果是这样,您能告诉我如何吗?

1 个答案:

答案 0 :(得分:3)

您需要使用stroke-dasharraystroke-dashoffset这样的示例:

var polygon = document.querySelector("polygon");
var dashoffset = 0;
polygon.style.strokeDashoffset = dashoffset;

function Animate() {
window.requestAnimationFrame(Animate);
dashoffset += 2;  
polygon.style.strokeDashoffset = dashoffset;
}
Animate();
svg{border:1px solid #d9d9d9; display:block; margin:0 auto;max-height:100vh}
<svg width="250" height="250" viewBox="0 0 250 250">
   <polygon points="50,50 200,50 200,200 50 200" 
            style="fill:none;
                   stroke:#000;
                   stroke-width:3;
                   stroke-dasharray: 30,15;"
            ></polygon>
</svg>

我希望这是您所需要的。