2013-04-14 4 views
-2

등급 시스템을 만들려고합니다. 아이디어는 페이지로드에 있습니다. 각 별에 몇 개의 별이 있는지 알 수 있습니다. 그리고 별을 클릭하면 막대 너비가 증가합니다. 여기 내가하는 일이있다. 지금까지의 문제는 1입니다 : 막대가 올바르게 표시되지 않습니다. 2 : 별 수가 정확하게 증분되지 않습니다. 아이디어는 새로운 클릭 후 막대를 업데이트하는 것입니다. 여기는 바이올린입니다. 나는 이것과 관련된 다른 질문이 거의 없다. 나는이 일클릭 후 div에 숫자가 표시됩니다.

http://jsfiddle.net/sghoush1/VU3LP/37/를 해결하면 나는 JQuery와 마찬가지로 지금까지 문제 # 2 등이

$(function(){ 

    var baractive = $('<div class="barActive"></div'); 
    baractive.appendTo('.bar'); 

    var curr_val = $('.reading').html(); 
    var new_val = parseInt(curr_val)+1; 

    if(curr_val< 20){ 
     $('.barActive').css('height', '20px').css('width', '20px'); 
    } 
    if(curr_val< 40){ 
     $('.barActive').css('height', '20px').css('width', '40px'); 
    } 

    $('.star').click(function(){ 
     $('.reading').eq($(this).index('.star')).html(new_val); 

     $(this).addClass('active'); 
     $('.bar').eq($(this).index('.star')).addClass('barActive'); 

    }); 

}); 

답변

0

과 같은

가는 새 게시물을 할 것입니다 : 당신이 curr_val를 읽고 내부 new_val을 계산해야 클릭 응답 기능. 그것이 그렇듯이, 당신은 첫 번째 것을 읽고 그것을 모든 스타 바에 사용합니다.

문제 # 1이가는 한 : 나는 대답이 없습니다; 막대가 올바르게 표시되지 않지만 원하는 동작을 말하지는 않습니다. 그러나 CSS에 대한 할당을 클릭 기능으로 옮기면이 문제도 사라질 것으로 판단됩니다 (막대에 curr_val 대신 new_val 사용). 특정 값과 색인을 사용하여 각 막대를 초기화해야합니다.

+0

@ Ted - 나는 바이얼을 업데이트했습니다. http://jsfiddle.net/sghoush1/VU3LP/40/ 나는 또한 증분 문제를 수정했습니다. 막대의 의미는 페이지가로드 될 때 현재 값을 기반으로 CSS 속성을 적용해야한다는 것입니다. 내가 수정 된 질문을 올리고 여기에 새로운 질문으로 게시했습니다 http://stackoverflow.com/questions/15995701/show-bars-corresponding-to-the-initial-values – soum

관련 문제