2012-06-28 1 views
0

각 div에 대해 200 개의 div 및 타이머를 만들고 싶습니다. 이것은 내 코드입니다 :jquery 카운트 다운 플러그인 : 카운트 다운 없음, 0 만

$(document).ready(function() { 

    for(var i=0; i<200; i++) 
    { 
     var tag = '<div id="' + i +'" style="width:150px"></div><br/>'; 
     $('#rsr').append(tag); 
    } 

    for(var i=0;i<200; i++) 
    { 
    var date = randomDate(new Date(2012, 0, 1), new Date()) 

     $("#"+i).countdown({until: date}); 
    } 
    }); 

    function randomDate(start, end) { 
     return new Date(start.getTime() + Math.random() * (end.getTime() - start.getTime())) 
    } 

어디까지 오류가 있습니까?
감사합니다. 숫자로 시작할 수 없습니다 JsFiddle

답변

1

문제는 단순히 1 월 1 일 과 오늘 사이의 날짜를 만드는 것이므로 항상 과거입니다. 목표 날짜가 이미 지났 으면 플러그인은 0에서 정지합니다. 대신 예를 들어 2013

픽업 :

var date = randomDate(new Date(2013, 0, 1), new Date()) 

당신 아이디 문제 (그들은 숫자로 시작해서는 안)하지만 실제 원인이 아니다, 그래서 대부분의 브라우저가 쉽게 대처할 수를 수정해야 .

바이올린 : http://jsfiddle.net/SDFLn/17/

+0

당신은 매우 세심합니다 :). 큰 감사를 드린다. – user1260827

0

ID이 시도 : 대신 id="'+i+'"

for(var i=0; i<200; i++) 
{ 
    var tag = '<div id="cnt_' + i +'" style="width:150px"></div><br/>'; 
    $('#rsr').append(tag); 
} 

for(var i=0;i<200; i++) 
{ 
var date = randomDate(new Date(2012, 0, 1), new Date()) 

    $("#cnt_"+i).countdown({until: date}); 
} 
}) 

+0

@mgraph : jsFiddle에서 제안 해보십시오. 작동하지 않습니다. – user1260827

0

id="cnt_'+i+'"을 코드의이 부분 교체하십시오 :

for(var i=0;i<200; i++) 
{ 
    var date = randomDate(new Date(2012, 0, 1), new Date()); 
    $("#s"+i).countdown({until: date}); 
} 

을 당신은 할 수 없습니다 뉴가있는 id이 있습니다. 시작 문자로 mbers. 세미콜론으로 끝내는 것을 잊지 마라. ;.