2012-03-26 2 views
1
$(function() { 
    $(".sli3").slider({ 
     range: "min", 
     value: 50, 
     min: 0, 
     max: 100, 
     slide: function(event, ui) { 
      $(".sli3_f").text($(this).val( ui.value+"%")); 
     } 
    }); 
    $(".sli3_f").text($(this).val($(".sli3").slider("value")+"%")); 
}); 


<div class="sli3"><span class="sli3_f"></span></div> 

Я пытаюсь изменить текст при перемещении ползунка В браузере ничего не происходит. Любые мысли?изменить текст при перемещении ползунка

ответ

1

Я не верю, что $ this.val() необходимо

$(function() { 
    $(".sli3").slider({ 
     range: "min", 
     value: 50, 
     min: 0, 
     max: 100, 
     slide: function(event, ui) { 
      $(".sli3_f").text(ui.value+"%"); 
     } 
    }); 
    $(".sli3_f").text($(".sli3").slider("value")+"%"); 
}); 


<div class="sli3"><span class="sli3_f"></span></div> 
2

У вас есть пара ошибок. Во-первых, вы не хотите использовать $(this).val(...). Это просто устанавливает значение $(this), что не является тем, что вы хотите сделать в этом случае. Вы просто хотите получить значение, которое предоставляется ui.value, когда вы находитесь в методах объекта слайдера. Вне методов ползунок, вы просто хотите $(".sli3").slider("value"):

$(function() { 
    $(".sli3").slider({ 
     range: "min", 
     value: 50, 
     min: 0, 
     max: 100, 
     slide: function(event, ui) { 
      $(".sli3_f").text(ui.value + "%"); 
     } 
    }); 

    $(".sli3_f").text($(".sli3").slider("value") + "%"); 
}); 

Демо: http://jsfiddle.net/XjD4K/

Смежные вопросы