window.location Hash entfernen

B

Benutzer007

Hallo,

sehe ich das richtig, dass es keine Möglichkeit gibt, den Hash komplett (inkl. #) zu entfernen, ohne dass die Seite neu aufgebaut wird?
Ich verwende auf der Seite eine externe Funktion (anders als vom Urheber gedacht), die irgendwann einen Hash an die URL anhängt, was aber unerwünscht in der von mir verwendeten Art und Weise.

Mit
Javascript:
window.location.href = window.location.href.replace('#uds-search-results','#');
bekomme ich zwar bis auf '#' alles weg - aber wie gesagt, '#' weg - Neuaufbau.

Grüße
 
Mit
Javascript:
window.location.href = window.location.href.replace('#uds-search-results','#');
bekomme ich zwar bis auf '#' alles weg - aber wie gesagt, '#' weg - Neuaufbau.
Den Hash-Tag bekommst du hier nicht weg, weil der zweite replace()-Parameter die Zeichenkette definiert, durch die die zu suchende Zeichenkette im ersten Parameter ersetzt werden soll.
Javascript:
window.location.href = window.location.href.replace('#uds-search-results','');

Und ja, jegliche Änderung von window.location stößt das Neuladen der Seite an, sofern kein (weiterer) Anker in der Seite angesprungen wird.

window location hash remove führt dich zu diversen stackoverflow-Threads.
 
Zuletzt bearbeitet:
Was du suchst ist pushstate:
Code:
history.pushState(null, null, "meineUrl");
ändert die URL ohne neu zu laden (nur in modernen Browsern)
 
Hej, das hat schon mal wunderbar geklappt.
Und so gar das scrollTop kann ich mir nun sparen.

Herr Ober, Schampus und Weiber für Herrn jeipack ;-)

Hm, leider etwas zu früh gefreut, denn in Chrome springt er nun zum Hash, wenn man kein Reload macht sondern normal lädt, z. B. durch Klick auf einen Link. Mit FF tritt dieser Effekt nicht auf, andere benutze ich nicht.
 
Zuletzt bearbeitet von einem Moderator:
Zurück