Safari (iOS) zeigt leere Seiten auf Discourse-Instanzen nach Beta 8 wegen manuell deaktiviertem IntersectionObserver an

Der neueste Build (2.7.0.beta8 f002c58a30) zeigt auf mobilen Geräten mit iOS in Safari eine leere Webseite an.

Dies lässt sich auch mit einer Meta-Instanz reproduzieren.

Ein älterer Build, den ich noch laufen habe, funktioniert weiterhin.

EDIT: Lösung hier :grinning_face:

Ich kann es weder auf Meta noch auf meiner Instanz reproduzieren.

Seltsam

Neu gestartet und Cache usw. geleert.

iOS 14.4 – iPhone 12 Pro.

Gleiche Version und dasselbe Problem auch auf dem iPhone 11.

Hoffen wir, dass wir hier etwas mehr Feedback bekommen können.

Bei mir tritt das Problem auf einem iPhone XS mit iOS 14.5.1 nicht auf.

Hast du Inhaltsblocker aktiviert?

Ich habe nachgeschaut, und sie sind alle ausgeschaltet.

Ich habe gerade auf das neueste iOS aktualisiert, das Problem besteht weiterhin.

Ich werde weiter nachforschen..

Kann auf folgenden Geräten nicht reproduziert werden:
iPhone 6s iOS 13.7
iPhone 7 Plus iOS 14.4.2
iPhone SE iOS 14.4.2

Wenn mehrere Geräte das Problem zeigen, liegt möglicherweise ein Problem mit dem Netzwerkpfad vor.

Tritt es sowohl bei WLAN als auch bei Mobilfunk auf?

Wenn ich JavaScript deaktiviere, erhalte ich eine sehr einfache Version von Meta. Wenn ich es wieder aktiviere, lädt die Seite neu und zeigt eine leere Seite an.

Ich habe VPN, Mobilfunk und WLAN ausprobiert.

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

Kein Problem im Chrome- oder Brave-Browser.

Ich hoffe wirklich, dass es jemand nachvollziehen kann.

Ich habe ein Board auf der aktuellen Beta 8, das nicht funktioniert (inklusive Meta).

Zwei Boards laufen auf Beta 7. Diese funktionieren.

Ich kann eines von 7 auf 8 aktualisieren und prüfen, ob es dann auch nicht mehr funktioniert.

Kannst du Meta im abgesicherten Modus ausprobieren? Funktioniert es bei dir?

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

Die Seite im abgesicherten Modus funktioniert, aber im abgesicherten Modus wird dieselbe leere Seite angezeigt.

Dieser Fehler wurde protokolliert, als ich in Safari auf einer beliebigen Seite aktualisiert habe.

ReferenceError: Can't find variable: IntersectionObserver
Url: https://domain.com/assets/ember_jquery-36a23101c869ab0dc53fc908de69adb785731593573d32bdeef416acc1076ef4.js
Line: 26
Column: 28177
Window Location: https://domain.com/login

Hmm @blake / @pmusaraj, ich dachte, das sei unter iOS 14 kein Problem mehr. Sollen wir die Entfernung des IE-Polyfills rückgängig machen? Anscheinend braucht iOS es manchmal noch.

Caniuse zeigt, dass die IntersectionObserver-API im März 2019 zu iOS 12.2 hinzugefügt wurde.

Wenn diese auch auf iOS getestet wurden, beweist das ebenfalls, dass es funktionieren sollte – alle Browser auf iOS verwenden WebKit im Hintergrund.

@MarcP, haben Sie zufällig die IntersectionObserver in Einstellungen > Safari > Erweitert > Experimentelle Funktionen deaktiviert? Sie sollte standardmäßig aktiviert sein. (siehe Safari Technology Preview Release 71-Hinweise)

Ah… Bingo! Beim Testen und Ausprobieren all dieser Fixes wurde irgendwo in einem Forum vorgeschlagen, alle experimentellen Funktionen zu deaktivieren, falls eine Safari-Seite leer bleibt oder einfriert. Nun ist das Problem behoben.

Nochmals vielen Dank an diese Community für das schnelle Denken.

Ich hatte gerade ein Forum-Mitglied mit diesem Problem. Sie hatten die experimentellen Funktionen irgendwann deaktiviert, wussten aber nicht, wie oder wann… Aber das hat sie wieder in Gang gebracht, also danke für dieses Thema!