So bleiben Sie beim Navigieren im Standalone-Modus von iOS Safari

8

Wenn Sie im eigenständigen Web-App-Modus von iOS sind und auf einen Link klicken, wird dieser Link in Mobile Safari geöffnet, anstatt im Standalone-Modus zu bleiben. Das macht für mich keinen Sinn (zumindest für interne Links).

Der einzige Weg, wie ich das beheben kann, ist das Hinzufügen eines Klick-Handlers zum Knoten document und das manuelle Navigieren wie folgt:

%Vor%

Gibt es eine weniger hacky Art, dieses Verhalten zu erhalten? Das tat mir wirklich weh.

    
Kris Selbekk 30.04.2017, 21:08
quelle

1 Antwort

2

Leider ist etwas in dieser Richtung der Standardweg. Irae auf GitHub hat ein Skript zusammengestellt, das Stay Standalone genannt wird und alle Drecksarbeiten für dich erledigt und auf einer Vielzahl getestet wird von Randfällen. Obwohl das Skript etwas älter ist, funktioniert es auf der modernen Version von iOS.

Es könnte ein bisschen hässlich sein, aber der Code ist resilient und kann in ein allgemeines Javascript-Paket aufgenommen werden. Es wird das Verhalten für andere Szenarien nicht ändern. Dies ist nur Spekulation, aber der Grund, warum Apple sich für dieses Verhalten entschieden hat, ist, dass eigenständige Web-Apps keine Vorwärts- oder Zurück-Schaltflächen haben und das Klicken auf einen Link die App in einen "unbrauchbaren" Zustand versetzt und Websites, die nicht voll Apps sein sollen. Dies ist wahrscheinlich das wünschenswerteste Verhalten im allgemeinen Fall für den Endbenutzer.

Hier ist eine Kopie des Javascript:

%Vor%

Sie können die Tests hier sehen.

    
Alec Gorge 08.05.2017, 08:36
quelle

Tags und Links