2012-06-06 6 views
9

Realizzo per la maggior parte il CSS è il modo migliore per ottenere elementi di altezza pari. Tuttavia, in alcune situazioni in cui abbiamo a che fare con una pagina o CMS di cui non abbiamo il pieno controllo, penso che una soluzione jQuery sarebbe molto utile.Usa jQuery per ottenere il valore di altezza più alto dei bambini, quindi applica quel valore di altezza a tutti i bambini

Mi chiedo come raggiungerei quanto segue in jQuery. Non ho molta familiarità con la sintassi di jQuery, ma qui c'è la mia sintassi pseudo jQuery/inglese annacquata ... Ha senso, oppure esiste un modo più semplice per raggiungere questo obiettivo? Mi rendo conto che il seguente codice non funziona nel minimo, è solo il mio modo di cercare di contribuire a una soluzione, e il passo in un po 'nel reparto logica:

$('div.columns')each.get.height; 
create an array of the height values 
grab the largest value in this array 
$('div.columns')each.css(height: $max-height); 

Una volta che si smette di ridere il mio pseudo-codice , qualche idea? Grazie !!

risposta

21

provare qualcosa di simile:

var maxHeight = -1; 
$('div.columns').each(function() { 
    if ($(this).height() > maxHeight) { 
     maxHeight = $(this).height(); 
    } 
}); 
$('div.columns').height(maxHeight); 

Nota: Si tratta di un codice non testato. Ma dovrebbe avere il concetto rudimentale in atto per te. Il tuo concetto originale era vicino, ma qui non è necessario un array se vuoi solo mantenere il valore di altezza massimo.

+0

Ciò funziona perfettamente! Grazie mille per la guida! – LearnWebCode

+1

@Eric So che è un po 'in ritardo, ma voglio davvero ringraziarvi per questo approccio. Ho usato gli array per farlo. Ho solo una domanda, cosa fa maxHeight = -1? Se rimuovo "-1", il codice non funziona. Quindi puoi guidarmi con quello? Grazie. –

+2

@Symbolwdd Felice di averlo aiutato! Il -1 fornisce un valore intero iniziale per il confronto. Senza quello, userebbe 'undefined', che non può essere paragonato correttamente a un numero intero. – Eric

Problemi correlati