|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Member
Iscritto dal: Nov 2010
Messaggi: 211
|
[Javascript] Attendere rendering pagina
Ciao
Ho una struttura html abbastanza complessa e ho la necessità di impostare la stessa altezza per due div affiancati orizzontalmente (#left e #main) Codice HTML:
<script type="text/javascript"> window.addEvent('domready', function() { var main=document.id('main'); var left=document.id('left'); var main_size=main.getSize(); var left_size=left.getSize(); if(main_size.y>=left_size.y) left.setStyle('min-height', main_size.y); else main.setStyle('min-height', left_size.y); }); </script> Se la pagina viene caricata lentamente noto che ad un certo punto i due div hanno la stessa altezza ma quando viene caricato anche il testo uno dei due si allunga |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Sep 2005
Messaggi: 1400
|
il dom ready scatta quando il dom della pagina è pronto, quindi quando tutti gli elementi sono stati creati e renderizzati.
se includi risorse esterne, come font immagini o importi css allora non c'è modo di sapere quando sono pronti se nn caricandoli in js e mettendo un listeer sul loro stato |
|
|
|
|
|
#3 | |
|
Member
Iscritto dal: Nov 2010
Messaggi: 211
|
Quote:
Premetto che ho specificato la dimensione delle immagini e del testo. EDIT: smanettando con i css sono riuscito a risolvere il problema impostando 'line-height:1' per tutto il testo EDIT2 Ho notato un'altro problema: ho impostato come font per il tag body '12px Arial,Helvetica,sans-serif' ma ho delle porzioni di testo che utilizzano un font caricato se per caso il testo che ho scritto con il font personalizzato, con il font arial occupasse 2 righe e con il font personalizzato una sola, la colonna risulta più lunga (perché contiene una riga di testo in più). quando il font personalizzato viene caricato questa si accorcia. Come faccio ad assicurarmi al 100% i due div abbiano la stessa altezza? (non ho idea di cosa sia il listeer) Ultima modifica di biowep : 13-01-2012 alle 19:56. |
|
|
|
|
|
|
#4 |
|
Member
Iscritto dal: Aug 2005
Messaggi: 168
|
Se usi jquery
Codice PHP:
Codice PHP:
Non sò se esiste qualcosa di equivalente in js normale. |
|
|
|
|
|
#5 | |
|
Member
Iscritto dal: Nov 2010
Messaggi: 211
|
Quote:
il problema è legato al caricamento del font bisogna che lo script parta dopo che il font è stato caricato, come faccio a farlo con mootools? (purtroppo non sono riuscito a trovarlo in giro e capisco poco l'inglese) SOLUZIONE mootools Codice:
window.addEvent('load', function() {
//codice
});
Codice:
window.onload = function () {
//codice
}
Ultima modifica di biowep : 16-01-2012 alle 14:32. |
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 05:56.




















