Ciao a tutti, avrei bisogno di recuperare la larghezza dei tag label presenti nel mio form, per poi realizzare un effetto slittante a sinistra del label stesso, ovviamente devo spostarlo della sua larghezza + qualche px ma non riesco a prendere la larghezza.

Premetto che la larghezza non è definita, cioè non ho dato proprietà width nel css, quindi la larghezza del label si adatta a quello che c' è dentro.

Vorrei sapere se esiste un modo per recuperare una larghezza che non è stata definita.

Di seguito il codice:


<form action="#" method="post" id="slitta">
<label for="nome" id="nome" >Nome</label>

<input type="text" id="nome" name="nome" value="hdfgdgdgdgd">

</form>

$('form#slitta label').each(function(){


// recupero il valore di input se c'è
var inputval = $(this).next('input').val();

// prendo la lunghezza del label e gli sommo 10px
var lunghezza_label = $(this).width(); //NON FUNZIONA!! ESISTE UN ALTRO MODO?
var spostamento=lunghezza_label + 10;


//se il valore del campo input e' pieno voglio che il label si sposta a sinistra di lunghezza_label + 10;
if(inputval != ''){
$(this).stop().animate({ 'left':'-'+spostamento }, 1);

}

Grazie a tutti per l' aiuto!