2011-11-25 19 views
7

Sto cercando di aggiungere pulsanti di controllo al cursore dell'interfaccia utente jQuery ma non riesco a farlo funzionare.jQuery Slider UI con pulsanti di controllo?

chiunque può vedere quello che sto facendo di sbagliato qui:

$(function() { 

    var gmin = 1; 
    var gmax = 500; 

    $("#slider").slider({ 
     value:5, 
     min: gmin, 
     max: gmax, 
     step: 1, 
     slide: function(event, ui) { 
      $("#donate_amount_label span").html("£" + ui.value); 
     } 
    }); 

    $("#donate_amount_label span").html("£" + $("#slider").slider("value")); 
    $("#").val($("#slider").slider("value")); 

    $('#down').click(function() { 

     var s = $("#slider"); 
     s.slider('value', s.slider('value') + s.slider("step")); 

    }); 

}); 

Il cursore funziona bene ed i valori si aggiorna, ma quando si fa clic sul collegamento #down non succede nulla per la barra di scorrimento. Mi piacerebbe che salisse di un gradino quando si fa clic sul collegamento #down.

Grazie Pete

risposta

3

si dovrebbe fare:

var s = $("#slider").slider({ 
    value:5, 
    min: gmin, 
    max: gmax, 
    step: 1, 
    slide: function(event, ui) { 
     $("#donate_amount_label span").html("£" + ui.value); 
    } 
}); 

$('#down').click(function() { 
    s.slider('value', s.slider('value') + s.slider("option", "step")); 

}); 

l'errore è stato a ottenere il passaggio. È necessario utilizzare

s.slider("option", "step") 

violino qui http://jsfiddle.net/nrNX8/ (con un passo alla 1 si muove molto slooooooowly)

+0

Eccellente! Questo ha funzionato. Grazie mille Nicola. –

+0

C'è un modo per modificarlo per continuare a scorrere se si tiene premuto il pulsante del mouse? –

+3

Sembra che nel tuo esempio l'evento di diapositiva non si attivi usando #down – kuba