Wie im TitelLeerer Seitenfehler aufgrund des Pfadnamens
Ich habe eine Webseite mit mehreren Seiten darauf. Die Seite war ursprünglich eine einseitige Anwendung, die mit jQuery erstellt wurde, bevor ich einige der Inhalte in separate Dateien verschoben und dynamisch mit einem jQuery-Templating-Plugin geladen habe. Die Seite beginnt mit der Standardeinstellung pathname
('/') und wenn sich der Inhalt ändert, ändert sich auch die pathname
der URL.
function goTo(page){
// Changing URL without reloading the page (to allow changing the URL
//state without changing the page)
if (page !== 'main'){
console.log("Yes it is not main!");
window.history.pushState("", "", "/"+page);
} else {
console.log("Yes it is main!");
window.history.pushState("", "", "/");
}
// Set page template
$('#main').loadTemplate('pages/'+page+'.html');
}
Oben ist die Methode, die ich verwendete, um die URL und den Inhalt zu ändern, wann immer Benutzer auf den Link klickt.
Das Problem, das ich erfahre, ist, dass, wenn ich die Seite aktualisieren, wenn ein Pfadname auf der URL ist, die Seite 404 Fehler (nicht gefunden) zurückgibt und eine unbekannte leere HTML-Seite zurückgibt, die völlig leer ist (kein CSS und Skript geladen).
Zum Beispiel lautet die URL der Hauptseite http://localhost:8000, und wenn ich auf Seite A geklickt habe, wird die URL http://localhost:8000/pageA. Wenn ich die Seite in Seite A aktualisiere, wird sie jedoch leer zurückgegeben. Nur wenn ich die URL auf http://localhost:8000 zurücksetze, wird die Seite normal aktualisiert.
Gibt es eine Möglichkeit, diese leere Seite und pathname
Problem zu beheben? Wie hat sich die pathname
vor dem Laden des DOM geändert?
Dank