diff --git a/lib/std/special/docs/main.js b/lib/std/special/docs/main.js index b95a93d5dd..7305add9e3 100644 --- a/lib/std/special/docs/main.js +++ b/lib/std/special/docs/main.js @@ -1844,7 +1844,13 @@ var oldHash = location.hash; var parts = oldHash.split("?"); var newPart2 = (domSearch.value === "") ? "" : ("?" + domSearch.value); - location.hash = (parts.length === 1) ? (oldHash + newPart2) : (parts[0] + newPart2); + var newHash = (oldHash === "" ? "#" : parts[0]) + newPart2; + // create a history entry only once per search + if (parts.length === 1) { + location.assign(newHash); + } else { + location.replace(newHash); + } } function getSearchTerms() { var list = curNavSearch.trim().split(/[ \r\n\t]+/);