javascript 질문 입니다. 채택완료
용미엘
3년 전
조회 2,227
안녕하세요.
숫자가 카운팅되는 자바스크립트 소스를 구해서 사용중입니다.
소숫점까지 표현되어야되는 부분이 있는데 소숫점표현이 안되더라구요;
조언을 부탁드리겠습니다.
</p>
<p><div class="arrival item">
<p class="radi_tem"><img src="image/main/quick_icon3.png" alt=""></p>
<p id="counter3"><b>23.4%</b></p>
<p>열무디자인 콘텐츠
평균 추가 도달률</p>
</div></p>
<p> </p>
<p><script>
$(document).scroll(function(){
var f = true;
if($(this).scrollTop() < 1400) {
if(f == true){</p>
<p> function numberCounter(target_frame, target_number) {
this.count = 0; this.diff = 0;
this.target_count = parseInt(target_number);
this.target_frame = document.getElementById(target_frame);
this.timer = null;
this.counter();
};
numberCounter.prototype.counter = function() {
var self = this;
this.diff = this.target_count - this.count;
if(this.diff > 0) {
self.count += Math.ceil(this.diff / 5);
}
this.target_frame.innerHTML = this.count.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ',');
if(this.count < this.target_count) {
this.timer = setTimeout(function() { self.counter(); }, 20);
} else {
clearTimeout(this.timer);
}
};</p>
<p> new numberCounter("counter3", 23); // 이부분을 23.4%로 표현하고자 합니다.
new numberCounter("counter2", 487);
new numberCounter("counter1", 147654);</p>
<p>
}</p>
<p> f = false;
}
});
</script></p>
<p>
댓글을 작성하려면 로그인이 필요합니다.
답변 2개
채택된 답변
+20 포인트
답변에 대한 댓글 2개
�
용미엘
3년 전
�
엑스엠엘
3년 전
적용하신 코드를 보여 주세요.
self.count += Math(this.diff / 5);
설마 이렇게 하신 거는 아니죠?
self.count += Math(this.diff / 5);
설마 이렇게 하신 거는 아니죠?
댓글을 작성하려면 로그인이 필요합니다.
3년 전
this.target_count = parseFloat(target_number);
this.target_frame = document.getElementById(target_frame);
이 부분 수정한 후에..
new numberCounter("counter3", 23.4);
해보세요.
로그인 후 평가할 수 있습니다
답변에 대한 댓글 1개
�
용미엘
3년 전
감사합니다 선생님, 알려주신대로하니 24로 표시가되네요. 조금더 방법을 찾아보겠습니다.
시간내주셔서 감사합니다.
시간내주셔서 감사합니다.
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인
ceil()을 제외할경우 동작을 안하네요 ^^;
좀더 찾아보겠습니다.