Navigationsleiste, die den laden nicht
Habe ich, was ist wahrscheinlich eine sehr dumme Frage. Ich Schreibe einen Ruby On Rails-app für die letzten paar Wochen, Dank der hervorragenden Bootstrap/Twitter-Komponenten zu vermeiden, mich zu tun, etwas künstlerisches.
Fiel mir auf, dass die Seite, die Navigationsleiste nicht angezeigt wird, um immer neu zu laden.
http://twitter.github.com/bootstrap/javascript.html
Klicken Sie auf die links ganz oben (in der Übersicht, Gerüst, etc) bewirkt, dass die Seite zu ändern, und die URL zu ändern, aber die topbar sich scheint nicht neu zu laden.
Kann ich nicht erkennen, was AJAX-y gehen Sie auf, dies zu tun wäre (mit Chrome dev toolbar etc). Ich kann mir nur vorstellen, dass es:
-
Einer optischen Täuschung, und es ist nachladen einfach es ist so schnell, dass ich es nicht sehen können. Aber warum wird dann nicht angezeigt, um neu zu laden in der gleichen Zeit wie der Inhalt?
-
Einige nicht nachweisbar AJAX gehen auf
- Eine Art von browser-caching gehen Sie auf (Sie können tun, dass für eine gerenderte Seite, element)
- Etwas ganz anderes
Irgendwelche Gedanken herzlich willkommen 🙂
- Es ändert sich nie, so ist es wie du sagst, eine optische Täuschung.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Den boostrap Website navbar scheint statisch zu sein, während neu geladen, aber es ist nicht clever js, das zu tun. Es gibt keine versteckten Inhalte, die angezeigt wird.
Was hier passiert ist ein sehr schnelles laden der Seite. Die Jungs von boostrap zogen alle Ihre js-links und Skripte an der Unterseite von html, so dass Ihre Seiten schneller geladen werden, Sie sagen sogar, dass in Ihren html-Code. Die Seiten laden so viel schneller, dass bestimmte Elemente, wie die Navigationsleiste scheinen nicht zu ändern. Ich versuchte es auf meiner Website und niedrige und siehe da die statische Navigationsleiste illusion.
Also vielleicht verschieben Sie Ihre js und scripts auf der Unterseite Ihres html-Codes können Ihnen helfen, den gleichen trick.
Die gesamte Seite (jedes Register) geladen ist, und ausgeblendet, wenn die Seite geladen wird.
Die URL geändert, mit
location.hash
wenn die links angeklickt werden (und JavaScript blockiert navigation).Wenn der hash gewechselt wird, wird die
onhashchange
Ereignis wird ausgeführt und die richtigen div angezeigt.Hier ist ein Beispiel: http://jsfiddle.net/uFgtS/ (Gut, ich denke, Sie können nicht sehen, die url ändern. Kopieren Sie die HTML -, CSS-und JS in eine Datei und führen Sie es.)