Как убрать финальный пустой хэш?
Решения чистить адресную строку от хэшей не подходят - если значение якоря заполнено, то этот функционал нужен.
Соответственно по этой причине не годится и
history.pushState('', document.title, window.location.pathname);
То есть надо чистить: site.com/page.html# -> site.com/page.html
Но надо оставить: site.com/page.html#anchor
-----
Добавлю: испробовал вот такой "лобовой" вариант
var myhash = String(window.location.hash);
if (myhash.length < 1) window.location.hash='';
так вот myhash.length возвращает 0 и при отсутствии хэша, и при варианте site.com/# и при варианте site.com/page.html# - и НЕ ЧИСТИТ этот чертов завершающий # :(
Попробовал "обмануть":
if (myhash.length < 1) {
var mypath = String(window.location.pathname);
if (mypath.length < 2) window.location.hash='';
}
результат аналогичный: site.com/# решетка гордо в URL :(