biowep
23-01-2012, 21:01
Salve
Ho bisogno di inviare ad una funzione tutti gli elementi di un documento aventi una certa classe.
Per prendere questi elementi utilizzo la funzione $$() di mootools che a quanto pare restituisce un array-like object che sinceramente non ho idea di cosa sia... voglio dire o è un array o non lo è (purtroppo non ho nessuna esperienza in javascript)
http://mootools.net/docs/core/Element/Element#Window:dollars
se conoscete, consigliatemi una funzione migliore per prendere gli elementi di una classe, so che c'è .getElementsByClassName() ma non viene supportato da ie8 e precedenti
questi elementi ritornati devo inviarli uno per uno ad una funzione
var expchildren=$$('.expchildren');
for(i=0; i<=expchildren.length; ++i) fullHeight(expchildren.item(i));
come potete vedere per riferirmi ai vari elementi utilizzo item(i) come consiglia la guida DOM (http://javascript.html.it/guide/lezione/816/recuperare-gli-elementi/)
Mi sa che ho fatto un po di casino quindi vi espongo il problema e magari mi potete aiutare
Voglio fare in modo che di tutti gli elementi (div) aventi classe "expchildren" gli elementi contenuti all'interno come figli (primo livello) vengano espansi alla dimensione del contenitore "expchildren"
ho pensato di fare in questo modo
function fullHeight(a){
var elem=a.childNodes;
var h=a.getSize().y-1;//-1 per il bordo inferiore (border-bottom:1px solid black)
var i;
for(i=0; i<=elem.length; ++i) elem.item(i).setStyle('min-height', h);//imposta altezza minima
}
window.addEvent('load', function(){//parte dopo il caricamento
var expchildren=$$('.expchildren');
for(i=0; i<=expchildren.length; ++i) fullHeight(expchildren.item(i));
document.getElementsByClassName(
});
Ho bisogno di inviare ad una funzione tutti gli elementi di un documento aventi una certa classe.
Per prendere questi elementi utilizzo la funzione $$() di mootools che a quanto pare restituisce un array-like object che sinceramente non ho idea di cosa sia... voglio dire o è un array o non lo è (purtroppo non ho nessuna esperienza in javascript)
http://mootools.net/docs/core/Element/Element#Window:dollars
se conoscete, consigliatemi una funzione migliore per prendere gli elementi di una classe, so che c'è .getElementsByClassName() ma non viene supportato da ie8 e precedenti
questi elementi ritornati devo inviarli uno per uno ad una funzione
var expchildren=$$('.expchildren');
for(i=0; i<=expchildren.length; ++i) fullHeight(expchildren.item(i));
come potete vedere per riferirmi ai vari elementi utilizzo item(i) come consiglia la guida DOM (http://javascript.html.it/guide/lezione/816/recuperare-gli-elementi/)
Mi sa che ho fatto un po di casino quindi vi espongo il problema e magari mi potete aiutare
Voglio fare in modo che di tutti gli elementi (div) aventi classe "expchildren" gli elementi contenuti all'interno come figli (primo livello) vengano espansi alla dimensione del contenitore "expchildren"
ho pensato di fare in questo modo
function fullHeight(a){
var elem=a.childNodes;
var h=a.getSize().y-1;//-1 per il bordo inferiore (border-bottom:1px solid black)
var i;
for(i=0; i<=elem.length; ++i) elem.item(i).setStyle('min-height', h);//imposta altezza minima
}
window.addEvent('load', function(){//parte dopo il caricamento
var expchildren=$$('.expchildren');
for(i=0; i<=expchildren.length; ++i) fullHeight(expchildren.item(i));
document.getElementsByClassName(
});