„Hasch-Bang“ Navigation, wie es manchmal, ...
genannt
http://whatever.com/path/to/#!/some-ajax-state
... ist eine temporäre Lösung für ein vorübergehendes Problem, das schnell ein Nicht-Thema dank modernen immer Browserstandards. Aller Voraussicht nach wird Twitter es auslaufen lassen, wie Facebook es bereits tut.
Es ist die Kombination mehrerer Konzepte ...
In der Vergangenheit diente ein Link zwei Zwecken: Es hat ein neues Dokument geladen und/oder gescrollt zu einem eingebetteten Anker nach unten, wie mit dem angegebenen Hash (#).
http://whatever.com/script.php#fourth-paragraph
Alles, was in einer URL nach dem Hash wurde nicht vom Server angefordert, aber der Seite im Browser gesucht. Das alles funktioniert immer noch gut.
Mit der Übernahme von AJAX konnte neuer Inhalt in die aktuelle (bereits geladene) Seite geladen werden. Bei diesem dynamischen Laden traten mehrere Probleme auf: 1) Es gab keine eindeutige URL zum Binden oder Verknüpfen mit diesem neuen Inhalt, 2) die Suche würde es niemals sehen.
Einige kluge Leute lösten das erste Problem, indem sie den Hash als eine Art "Zustand" -Referenz verwendeten, um in Verbindungen & Bookmarks eingeschlossen zu werden. Nachdem das Dokument geladen wurde, liest der Browser den Hash und führt die AJAX-Anforderungen aus, wobei die Seite mit ihren dynamischen AJAX-Änderungen angezeigt wird.
http://whatever.com/script.php#some-ajax-state
Dies löste das AJAX Problem, aber die Suchmaschine Problem existiert noch. Suchmaschinen laden keine Seiten und führen Javascript wie einen Browser aus.
Google zur Rettung. Google schlug ein Schema vor, bei dem jede URL mit einem Hash-Knall (#!) Anstelle eines Hashs (#) dem Such-Bot vorschlug, dass es eine alternative URL für die Indexierung gab, die unter anderem eine Variable "_escaped_fragment_" enthielt Dinge. Lesen Sie hier, es ...
https://developers.google.com/webmasters/ajax-crawling/docs/getting-started
heute mit der Verabschiedung des Javascript pushstate in den meisten gängigen Browsern, all dies ist obsolet. Wenn der Inhalt dynamisch geladen oder geändert wird, kann die aktuelle Seiten-URL mit pushstate geändert werden, ohne dass die Seite geladen wird. Wenn gewünscht, bietet dies eine echte Arbeits-URL für Lesezeichen & Geschichte. Links können dann gemacht werden, wie sie immer waren, ohne Hashes & Hash-Pony.
Ab heute, wenn Sie Facebook in einem älteren Browser laden, sehen Sie die Hash-Pony, aber ein aktueller Browser wird die Verwendung von Pushstate demonstrieren.
Wenn Sie eine Frage als Duplikat markieren, wäre dies hilfreich bei einem Verweis auf das Duplikat selbst. Ist das die, die du meinst? http://stackoverflow.com/questions/3009380/whats-the-shebang-hashbang-in-facebook-and-new-twitter-urls-for?lq=1 –
Sie sollten jetzt ernsthaft Ihre angenommene Antwort als @ betrachten BillBad erklärte es außergewöhnlich gut! –
@Emin okay, ich habe es getan! Ich habe nicht lange auf diese Frage zurückgeschaut. – ixchi