1
SVG 또는 JavaScript 또는 Jquery를 사용하여 30 초 원형 카운트 다운 링을 찾고 있습니다. 아래 stackoverflow 예제에서 발견하고 함수를 사용하여 구현하려고하지만 애니메이션을 사용하여 느낌 링 문제가 있습니다. 이전 링 채우기를 보여주기 때문에 30 초 전에 타이머를 다시 시작할 수 없습니다. 제발 제안 해주세요. 작업 Jsfiddle http://jsfiddle.net/qZrgS/90/SVG 또는 JavaScript 또는 Jquery를 사용하여 30 초 동안 원형 카운트 다운 타이머를 설계하는 방법은 무엇입니까?
jQuery를
$scope.startTimer = function(){
var time = 30;
var initialOffset = '220';
var i = 1
$('.circle_animation').css('stroke-dashoffset', initialOffset-(1*(initialOffset/time)));
var interval = setInterval(function() {
if (i == time) {
clearInterval(interval);
return;
}
$('.circle_animation').css('stroke-dashoffset', initialOffset-((i+1)*(initialOffset/time)));
i++;
}, 1000);
};
CSS는
svg {
-webkit-transform: rotate(-90deg);
transform: rotate(-90deg);
}
.circle_animation {
stroke-dasharray: 220; /* this value is the pixel circumference of the circle */
stroke-dashoffset: 220;
transition: all 1s linear;
}
HTML을
<svg class="countdownTimer " width="100" height="100" xmlns="http://www.w3.org/2000/svg">
<g>
<circle class="circle" cx="41" cy="41" r="37" stroke-width="1" fill="none" stroke="grey"/>
<circle ng-init="startTimer();" id="circle" class="circle_animation" r="34.44" cy="41" cx="41" stroke-width="5" stroke="#0288d1" fill="none"/><circle class="circle" cx="41" cy="41" r="32" stroke-width="1" fill="none" stroke="grey"/><span ng-init="timer();RequestSend();" id="countdowntimer" class="timeNumber">30</span>
</g>
</svg>
내가 ..... –
의 오류 시도 실수를 입력하는 것에 대해 사과드립니다. 내 콘솔에 내 애니메이션이 계속 진행 중임을 나타내는 i 값이 표시됩니다. 내 목표는 30 초 전에 이전 애니메이션을 닫으면 시작 지점부터 애니메이션을 시작하는 것입니다. – madalinivascu
솔루션 위 얻고 내가 어떤'internal' 변수가 표시되지 않습니다 정의되지 않은 내부 –