2014-01-09 2 views
1

jQuery 슬라이더가있는 초보자입니다. 나와 함께하시기 바랍니다!다른 함수를 호출하는 jQuery Slider

내가 다른 입력은 슬라이더의 값에 따라 내 updateData(input) 함수를 호출 할,하지만 if 문을 사용하는 경우, 그것은 단지 하나 개의 조건을 수 있습니다 것으로 나타났습니다 :

<div id="slider"></div> 

<script> 
$('#slider').slider({ 
    orientation: 'horizontal', 
    step: 5, 
    value: 0, 
    animate: true, 
    slide: function(event, ui) { 
     if(ui.value > 50){ 
      updateData("data/commodities3.json") 
     } 
     else if(ui.value > 75){ 
      updateData("data/commodities2.json") 
     } 
    } 
}); 
</script> 

이 작업을 수행하는 방법에 대한 조언 감사하겠습니다. 감사.

답변

1

귀하의 문제는 귀하의 조건 정의 방법에 관한 것입니다. 분명히, 당신이 50을 넘는 모든 것을 잡으면, 그것은 else 조건을 검사하는 문제를 겪지 않을 것입니다.

가장 큰 수에 대해 확인하는 것은 처음이 문제를 해결할 :

if (ui.value > 75) { 
    updateData("data/commodities2.json") 
} else if (ui.value > 50) { 
    updateData("data/commodities3.json") 
} 
+0

안녕하십니까. 나는 이것을 시도했지만, 슬라이더는 여전히 첫 번째 조건을 만족 한 후에 움직이지 않을 것이다. –

+0

문제는 슬라이더가 움직이지 않거나 updateData 함수가 실행되지 않는다는 것입니다. – joelrobichaud

+0

updateData가 실행되지만 슬라이더가 나중에 이동하지 않습니다. –

0

내가 제대로 이해하고있어 경우에, 나는 당신이 당신의 경우 문을 포맷 할 필요가 있다고 생각합니다. 현재 그것을 가지고 같은 값> 75도> (50)

때문에

는 다른 사람이 문이 실행되지 않습니다 만약 당신이 이런 식으로 뭔가 할 생각 :

if (ui.value > 75) { DO SOMETHING } 
else if (ui.value > 50) { DO SOMETHING ELSE } 
+0

이것은 작동 할 수는 있지만 잠재적으로 약 10 개의 서로 다른 입력을 가질 것입니다. 그래서 위의 10, 20 등 –

+0

확인할 가치가 더 있다면 계단식 문을 사용하십시오 (위의 편집 참조). 더 높은 값부터 시작하여 더 낮은 값까지 캐스케이드하십시오. – mtaube

+0

도움 주셔서 감사합니다. 나는 이것을 시도했지만 그것이 만족 한 첫 번째 조건에 도달 한 후에도 여전히 움직이지 않을 것이다. –

0

@mtaube을, @joelrobichaud, 도와 주셔서 감사합니다. 나는 그 답을 조합하여 알아낼 수있었습니다!

<slidertitle>Pages</slidertitle> 
     <div id="slider"></div> 


    <script> 
    $('#slider').slider({ 
     orientation: 'horizontal', 
     step: 5, 
     value: 0, 
     animate: false, 
     change: function(event, ui) { 
     if (ui.value > 75) { 
     updateData("data/commodities3.json") 
     } 
      else if(ui.value > 50){ 
      updateData("data/commodities2.json") 
      } 

     } 
    }); 


    </script> 
+0

답변을 수락 한 것으로 표시 하시겠습니까? 고맙습니다! – joelrobichaud