AngularJS So entfernen Sie das # -Symbol in IE9 mithilfe der Route

8

Ich kann das # -Symbol in IE9 nicht entfernen. Ich suchte nach einer Antwort, fand aber keine Lösung.

Dies führt immer zu

%Vor%

und zeigt diese Beschreibung:

%Vor%

locationprovider.html5mode(true) funktioniert nicht. Die gleiche Route funktioniert in FireFox und zeigt

an %Vor%

Wie kann ich das korrigieren?

    
TheLast BlackCat 24.07.2013, 09:23
quelle

4 Antworten

6

IE9 hat keine html5-History-API-Unterstützung, deshalb hängt es # an die URL an, das Entfernen von # wird Ihr Problem nicht lösen

    
karaxuna 24.07.2013 10:16
quelle
6

$ location-Dokumentation

Siehe "Hashbang- und HTML5-Modi"

Grundsätzlich verwendet der HTML5-Modus History API , wenn der Browser dies unterstützt, und greift auf hashbang ( # ) zurück, wenn er nicht unterstützt wird.

Sie können "#" in einem Browser ohne History-API nicht "einfach" entfernen. Denn wenn Sie die URL ändern, würde der Browser versuchen, ein Neuladen zu erzwingen und den Fluss zu unterbrechen.

    
Umur Kontacı 24.07.2013 10:23
quelle
1

Tatsächlich können wir das nicht entfernen, aber wir können es reibungslos funktionieren lassen

%Vor%     
Kevin Black 04.01.2017 07:10
quelle
0

Die Verwendung von window.location.hash = '/' hat mein Problem gelöst.

%Vor%
    
kerobs 16.03.2015 15:27
quelle