-
problema slider jquery
Ciao ragazzi,
sto provando ad utilizzare questo slider jquery:
http://egorkhmelev.github.io/jslider/
ho inserito questo codice nella pagina html
Codice HTML:
<div class="layout-slider" style="width: 100%">
<span style="display: inline-block; width: 190px; padding: 10px; margin-top:35px;"><input id="Slider1" type="slider" name="price" value="10;500" /></span>
</div>
<script type="text/javascript" charset="utf-8">
jQuery("#Slider1").slider({
from: 10,
to: 500,
step: 25,
smooth: true,
round: 0,
dimension: " €",
onstatechange: aggiorna(),
});
</script>
</div>
e funziona tranne per il fatto che non riesco ad intercettare i valori dei cambiamenti: onstatechange dovrebbe specificare la funzione che entra in azione in questi casi, ma in realtà entra in azione quando carica la pagina e non stampa i valori. Come posso ottenere i valori ogni volta che l'utente modifica lo slider? Grazie
Questo è il codice della funzione aggiorna.
Codice:
function aggiorna(){
var v=$(".selector").slider("value")
alert(v);
}
-
Devi passare la funzione, non chiamarla: leva le parentesi tonde.
-
Grazie karl94, ora la funzione viene eseguita ogni volta che cambia lo stato, il problema è che non funziona come pensavo, infatti quando la invoco craa un altro slider... sapete dirmi come mai?
PS il codice della funzione aggiorna era sbagliato, questo è corretto:
Codice:
function aggiorna(){
var v=$("#Slider1").slider("value")
alert(v);
}
-
Basta guardare un attimo la documentazione ufficiale e i relativi esempi: il valore dello slider è contenuto nella proprietà value dell'oggetto passato come secondo parametro alla tua funzione aggiorna.
-
Ho modificato la funzione aggiorna in questo modo:
Codice:
function aggiorna() {
var v=$("#Slider1").slider("option","value");
alert(v);
}
ma il risultato dell'alert è un oggetto. Come posso fare ad avere i valori? (lo slider i di quelli con range quindi c'è un minimo e un massimo)
grazie
-
No, non ci siamo.
Codice:
function aggiorna(e, ue) {
alert(ue.value);
}