2013-07-28 2 views
0

이것은 머리를 긁적 거리는 사람입니다! Jquery UI : 슬라이더 사전 설정

이 슬라이더

잘 작동 :

http://jsfiddle.net/EuTA8/

$("#s2").slider({ 
     min: 0, 
     max: 200, 
     step: .1, 
     value: 100.0, 
     values: [200.0], 
     slide: function(event, ui) { 
      for (var i = 0; i < ui.values.length; ++i) { 
       $("input.v2[data-index=" + i + "]").val(ui.values[i]+ " %"); 
      } 
     } 
}); 

하지만 '100.0'에서 슬라이더의 위치를 ​​미리 설정합니다. 이 작업을 수행해야하는 속성을 가지고에도 불구하고 :

value: 100.0, 

... JQuery와 UI는 그것에게이 최대 설정에서 슬라이더를두고 무시합니다.

values: 200.0, 

그리고 슬라이더 위치 프리셋을 아름답게 :

나는 대괄호 (그들은 심지어이 있어야한다?!) 값을 생성하는 특성을 벗어. 하지만 지금은 슬라이더를 드래그 할 수 없습니다! 내가 여기서 무엇을 의미하는지 참조 :

http://jsfiddle.net/EuTA8/1/

을 무슨 일이야? 내가해야 할 일은 위치를 미리 설정하는 것뿐입니다. (입력 요소의 값을 걱정하지 마십시오.)

고마워요.

답변

1
$("#s2").slider({ 
    min: 0, 
    max: 200, 
    step: .1, 
    value: 100.0, 
    values: [100.0], 
    slide: function(event, ui) { 
     for (var i = 0; i < ui.values.length; ++i) { 
      $("input.v2[data-index=" + i + "]").val(ui.values[i]+ " %"); 
     } 
    } 
}); 

변경 [200.0]

+0

잘 했어! 정확히 내가 뭘 잘못하고 있었는지에 대한 정보를 어디에서 찾을 수 있습니까? 나는 "값"이 "슬라이더의 값의 수"를 의미한다고 생각했습니다. – Starkers

+0

@Starkers : "values"는 슬라이더에있는 값의 수를 의미하는 것이 아니라 슬라이더를 넣을 위치를 나타냅니다. 하나 이상을 추가 할 수 있습니다. http://jqueryui.com/slider/#range – ProgramFOX

+0

@Starkers ProgramFOX 꽤 많이 요약 해줍니다. – Jim

1

[100.0]하려고 :

$("#s2").slider({ 
    min: 0, 
    max: 200, 
    step: .1, 
    values: [100.0] 
    slide: function(event, ui) { 
     for (var i = 0; i < ui.values.length; ++i) { 
      $("input.v2[data-index=" + i + "]").val(ui.values[i]+ " %"); 
     } 
    } 
}); 

당신은 단순히 value: 100.0 줄을 제거하고, values: [100]

values: [200]을 변경 그리고 네, 대괄호가해야 할 수 있습니다 values이 배열이기 때문입니다.