Question

Je fais un curseur composant basé sur GWT.

Parent : width = 100%
.-------------------------------------------------.
| .---------------------------------------------. |
| |     Child : width = X                       | |
| '---------------------------------------------' |
'-------------------------------------------------'

où X = (largeur de parent dans px) - (certains calculs basés sur l'exécution);

Mon code dit:

int providedWidth = parentContainer.getOffsetWidth();

Dans Firefox, je reçois la largeur correctement comme (par exemple) 345px Mais dans IE6, il retourne en permanence la largeur 0, peu importe quelle taille il est.

Du point de vue GWT, Parent est un AbsolutePanel placé dans un DockPanel (super parent), Enfant est un HorizontalPanel.

Je code ne placé ici pour brièveté, est-il un autre moyen d'obtenir la largeur ou je suis Je fait quelque chose de mal?

Était-ce utile?

La solution

Juste une supposition sauvage, mais peut-être l'élément a besoin de « mise en page » dans IE6? Pouvez-vous donner style='zoom:1'?

Autres conseils

Dans IE, vous devez parfois obtenir les informations de taille dans un DeferredCommand parce que IE ne fait que la mise en page après que le fil d'événement est fait.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top