Préface: Le projet de l'entreprise doit utiliser un cadre pop-up pour centrer verticalement. Des couches pop-up de centrage vertical similaires sur Internet sont similaires. Parce que le projet est basé sur jQuery, utilisez $ (fenêtre) .Height () - couche.Height ()) / 2 + $ (document) .scrollTop () pour obtenir le déplacement vertical. J'ai testé toutes sortes de navigateurs sans aucun problème. Après que le personnel de fond a déplacé la valeur vers le projet, il y avait un problème. Lorsque la page a dépassé un écran, sous Chrome et FF, la boîte contextuelle n'était pas centrée verticalement dans l'écran actuel, mais centré par rapport à la page Web entière.
Après avoir examiné les informations de toutes les parties, toutes les conclusions indiquent:
1. Hauteur de fenêtre, $ (fenêtre) .Height ()
2. Hauteur du document, $ (document) .Height ()
3. La hauteur du rouleau, $ (fenêtre) .scrolltop ()
Trouvez la raison : Ensuite, j'ai constaté que la page du personnel backend n'avait pas de doctype, donc dans Chrome, $ (Window) .Height () = $ (document) .Height (), $ (document) .Height () signifie que lorsque la hauteur réelle du contenu de la page Web n'est pas pleine d'un seul écran, cela signifie la hauteur de la fenêtre entière (la valeur changera lorsque la fenêtre est agrandie et réduite). Lorsque la page dépasse un écran, elle est exprimée comme la hauteur réelle de l'ensemble du contenu de la page Web. Il n'y a aucune objection à cela, et cela n'a aucun effet sur l'opportunité de définir ou non Doctype. Cependant: $ (fenêtre) .Height () est dans Transitional.dtd, que la hauteur réelle du contenu de la page Web dépasse ou non le plein écran, il est égal à la hauteur de la fenêtre entière (la valeur changera lorsque la fenêtre est agrandie et réduite). Si doctype n'est pas défini, $ (fenêtre) .Height () = $ (document) .Height (). Autrement dit, lorsque le contenu dépasse un écran, $ (fenêtre) .Height () est la hauteur réelle de la page Web, ce qui n'est pas ce qui est considéré comme égal à la hauteur de la fenêtre.
Solution:
s Pour obtenir la hauteur de la fenêtre, vous ne pouvez apporter des modifications correspondantes qu'on en fonction de Doctype. Si Doctype n'est pas défini, le traitement suivant sera effectué.
if ($ (document) .height ()> = $ (window) .Height ()) {_windowHeight = document.body.clientHeight; } else {// alert ($ (fenêtre) .Height ()); _windowHeight = $ (document) .Height (); };Lorsque doctype est défini sur transitional.dtd, windowheight = $ (fenêtre) .Height ()
La brève discussion ci-dessus sur l'impact de Doctype sur la valeur de $ (Window) .Height () est tout le contenu que je partage avec vous. J'espère que vous pourrez vous faire référence et j'espère que vous pourrez soutenir Wulin.com plus.