ich diesen Kern vor kurzem auf gefunden, wie man eine Website mit dem HTML5 History API Ajaxify mit history.js, jQuery und scrollTo: https://github.com/browserstate/ajaxifyBenötigen Sie Hilfe zu verstehen, wie eine Website ajaxify
ich eine harte Zeit habe ein immer einfache Version dieser Arbeit und bin mir nicht sicher, ob ich alles verstehe. Zuerst habe ich alle Skripte geladen im Kern vorhanden, dann eine wirklich einfache nav und Content-Abschnitt ein:
<ul id="nav">
<li id="home-link"><a href="/" title="Home">Home</a>/</li>
<li id="work-link"><a href="/work" title="Work">Work</a>/</li>
<li id="labs-link"><a href="/labs" title="Labs">Labs</a>/</li>
<li id="blog-link"><a href="/blog" title="Blog">Blog</a>/</li>
<li id="contact-link"><a href="/contact" title="Contact">Contact</a></li>
</ul>
<div id="content"></div>
Als nächstes änderte ich die Wähler Variablen die HTML übereinstimmen:
/* Application Specific Variables */
contentSelector = '#content',
$content = $(contentSelector),
contentNode = $content.get(0),
$menu = $('#nav'),
activeClass = 'active',
activeSelector = '.active',
menuChildrenSelector = 'li',
Was Ich sollte als nächstes gehen, wo ich verloren gehe. Alles, was ich tun möchte, ist HTML-Inhalt für den ausgewählten Nav-Link laden. Wenn ich also auf "Arbeit" geklickt habe, möchte ich eine work.html-Datei in den Inhaltsbereich laden und die URL in "mywebsite.com/work" ändern. Um die Dinge einfach zu halten, können wir sagen, dass work.html und alle anderen ajaxbaren Inhalte sich im selben Verzeichnis befinden.
Jede Hilfe wird sehr geschätzt! Prost!
Würde es Ihnen etwas ausmachen, jede Zeile zu kommentieren? Ich habe mehrere Versuche unternommen, dies im Laufe der Jahre zu implementieren und habe es nie funktioniert - meine aktuellen Fehler beziehen sich auf 404 und im Grunde bricht das gesamte Site-Format, wenn man auf einen Link klickt. Ich habe auf die Skriptquellen 'jquery-scrollto.js',' jquery.history.js' und 'ajaxify-html5.js' verwiesen, die auf https: // github.com/browserstate/ajaxify angezeigt und kopiert und eingefügt wurden Ihr Code oben (mein Inhaltsbereich ist '# main_content' und meine Dateien sind im Verzeichnis'/includes') und die Klasse 'ajaxify' zu Links hinzugefügt. Ich habe keine Bookmarklet- oder Chrome-Erweiterung installiert. – user1063287
Ich endete mit Ergebnissen, bei denen eine leere Seite geladen würde, aber wenn ich mir die Quelle anschaute, konnte ich den Inhalt der Seite sehen. So kann es in diesem Stadium nicht umsetzen. Die einzige andere Anomalie war, dass ich PHP, (dh Kopf- und Fußzeile auf der Indexseite usw.) nicht sicher, ob dies das Ergebnis beeinflussen würde. – user1063287
@ user1063287 Ich postete ein Beispiel auf github (siehe Antwort Update), hoffentlich wird dies einigen helfen. Ich empfehle, zuerst eine einfache statische HTML-Version zu erhalten, bevor php implementiert wird. – eivers88