Site Notice
hello, world
Difference between revisions of "Svg loading"
From Project-EPB Commons
([InPageEdit] 没有编辑摘要) |
([InPageEdit] 没有编辑摘要) |
||
Line 7: | Line 7: | ||
<style> | <style> | ||
.svgspinner circle { | .svgspinner circle { | ||
− | animation: circle-spin | + | animation: circle-spin 1.8s infinite linear; |
} | } | ||
@keyframes circle-spin { | @keyframes circle-spin { | ||
Line 31: | Line 31: | ||
} | } | ||
if ($this.attr('data-status') === 'doMinus') { | if ($this.attr('data-status') === 'doMinus') { | ||
− | dash2 = dash1 - | + | dash2 = dash1 - 12; |
$this.attr('stroke-dasharray', dash2 + ' 1000'); | $this.attr('stroke-dasharray', dash2 + ' 1000'); | ||
} else if ($this.attr('data-status') === 'doPlus') { | } else if ($this.attr('data-status') === 'doPlus') { | ||
− | dash2 = dash1 + | + | dash2 = dash1 + 12; |
$this.attr('stroke-dasharray', dash2 + ' 1000'); | $this.attr('stroke-dasharray', dash2 + ' 1000'); | ||
} | } |
Revision as of 01:32, 3 December 2019
<html> <svg xmlns="http://www.w3.org/2000/svg" version="1.1" class="svgspinner" width="52px" height="52px"> <g id="group" style="" transform="translate(26,26)"> <circle data-status="doMinus" r="20" stroke="black" stroke-width="6" stroke-dasharray="120 1000" fill="transparent" style="transition: stroke-dasharray .2s linear" cx="0" cy="0"></circle> </g> </svg> <style> .svgspinner circle {
animation: circle-spin 1.8s infinite linear;
} @keyframes circle-spin {
from { transform: rotate(0deg); } to { transform: rotate(720deg); }
} </style> <script> setInterval(function () {
var $this = $('.svgspinner circle'), $class = $this.attr('class'), dash = $this.attr('stroke-dasharray'), dash1 = Number(dash.split(' ')[0]), dash2; if (dash1 > 126) { $this.attr('data-status', 'doMinus'); } else if (dash1 < 4) { $this.attr('data-status', 'doPlus'); } if ($this.attr('data-status') === 'doMinus') { dash2 = dash1 - 12; $this.attr('stroke-dasharray', dash2 + ' 1000'); } else if ($this.attr('data-status') === 'doPlus') { dash2 = dash1 + 12; $this.attr('stroke-dasharray', dash2 + ' 1000'); }
}, 200); </script> </html>