2009-11-27 7 views
0

lorsque les éléments sont cachés, vous ne pouvez pas lire par exemple. leurs dimensions, est-ce un problème général javascript ou y a-t-il peut-être une solution de contournement dans jQuery?jQuery: éléments cachés - question générale

Je vais avoir par exemple. certains onglets contenant des widgets, les initialiser ne fonctionne pas correctement car ils sont masqués.

thx

Répondre

2

Aucune solution de contournement que je connais.

Vous pouvez, cependant, utiliser la visibilité: hidden au lieu de display: none dans votre CSS. Les éléments masqués à l'aide de la visibilité: masqués conservent leur position et leur taille mais sont simplement invisibles.

Espérons que cela aide.

0

Si vous définissez la visibilité: masqué, l'élément occupe toujours de l'espace, alors définissez la position: absolu également pour le sortir du flux de documents. Si nécessaire, vous pouvez positionner l'élément hors de l'écran afin qu'il ne bloque pas de manière invisible les événements et autres.

$("#el").css({ 
    visibility: "hidden", 
    position: "absolute", 
    left: "-9999px" 
}); 

De là, vous pouvez toujours lire la largeur de l'élément. Par exemple:

$("#el").width(); 

Espérons que cela aide!

0

Cette blog post met en évidence un moyen d'obtenir les dimensions d'un élément masqué à l'aide de display: none. Les autres réponses touchent les mêmes idées, mais les deux n'offrent pas de solution pour rétablir les propriétés CSS à leurs valeurs d'origine.

Questions connexes