Safari (iOS) affiche des pages vierges sur les instances Discourse après la beta 8 en raison de la désactivation manuelle de IntersectionObserver

La dernière version (2.7.0.beta8 f002c58a30) affiche une page web vide sur les appareils mobiles sous iOS avec Safari.

Je peux reproduire le problème avec une instance Meta également.

L’ancienne version que j’utilise fonctionne toujours.

MODIF : Solution ici :grinning_face:

Je ne parviens pas non plus à reproduire le problème, ni sur meta ni sur mon instance.

Étrange

Redémarré et vidé le cache, etc.

iOS 14.4 - iPhone 12 Pro.
Même version et même problème sur un iPhone 11.

J’espère que nous pourrons obtenir plus de retours ici.

Pas de reproduction ici avec un Xs sous 14.5.1.

Avez-vous des bloqueurs de contenu activés ?

J’ai vérifié et tout est désactivé.

Je viens de mettre à jour vers la dernière version d’iOS, le problème persiste.

Je vais continuer à chercher…

Impossible à reproduire sur :
iPhone 6s iOS 13.7
iPhone 7 Plus iOS 14.4.2
iPhone SE iOS 14.4.2

Si plusieurs appareils présentent le problème, il peut s’agir d’un problème lié au chemin réseau.

Cela se produit-il à la fois sur le Wi-Fi et sur le réseau cellulaire ?

Si je désactive JavaScript, j’obtiens une version très simple de meta. Quand je le réactive, la page se recharge et s’affiche en blanc.

J’ai essayé avec un VPN, en données mobiles et en Wi-Fi.

iPhone 11 Pro, iOS 14.4
iPhone 12 Pro, iOS 14.5.1

Aucun problème sur Chrome ou le navigateur Brave.

J’espère vraiment que quelqu’un pourra reproduire le problème.

J’ai un tableau sur la dernière bêta 8. Il ne fonctionne pas (y compris meta).

Deux tableaux tournent sur la bêta 7. Ils fonctionnent.

Je peux mettre à jour l’un d’eux de la version 7 à la 8 pour voir si cela cesse également de fonctionner.

Peux-tu essayer Meta en mode sans échec ? Est-ce que cela fonctionne pour toi ?

https://meta.discourse.org/safe-mode

La page du mode sans échec fonctionne, mais en mode sans échec, la même page blanche s’affiche.

J’ai remarqué que ce journal apparaissait lorsque j’actualisais n’importe quelle page dans Safari.

ReferenceError: Impossible de trouver la variable : IntersectionObserver
URL : https://domain.com/assets/ember_jquery-36a23101c869ab0dc53fc908de69adb785731593573d32bdeef416acc1076ef4.js
Ligne : 26
Colonne : 28177
Emplacement de la fenêtre : https://domain.com/login

Hmm @blake / @pmusaraj, je croyais que ce n’était pas un problème sur iOS 14. Devrions-nous annuler la suppression de ce polyfill IE ? Il semble que iOS en ait encore besoin parfois.

Caniuse indique que l’API IntersectionObserver a été ajoutée à iOS 12.2 en mars 2019.

Si ces tests ont également été effectués sur iOS, cela prouve alors que cela devrait fonctionner : tous les navigateurs sur iOS utilisent WebKit en arrière-plan.

@MarcP, avez-vous, par hasard, désactivé IntersectionObserver dans Réglages > Safari > Avancé > Fonctionnalités expérimentales ? Elle devrait être activée par défaut. (voir les notes de version de Safari Technology Preview 71)

Ah… Bingo ! En testant et en essayant toutes ces corrections, l’un des forums a suggéré de désactiver toutes les fonctionnalités expérimentales si une page Safari devenait blanche. Eh bien, le problème est maintenant résolu.

Merci encore à cette communauté pour votre réactivité.

J’ai eu un membre du forum avec ce problème. Il avait désactivé les fonctionnalités expérimentales à un moment donné, mais ne savait ni comment ni quand… mais cela l’a remis sur pied, alors merci pour ce sujet !