window.location с хешем возвращается в начало страницы [дубликат]

Вы также можете использовать назначение slice для удаления одного или нескольких элементов из списка:

r = [1, 'blah', 9, 8, 2, 3, 4]
>>> r[1:4] = []
>>> r
[1, 2, 3, 4]
67
задан Jonas T 24 July 2012 в 13:28
поделиться

8 ответов

window.location.href += "#mypara";
location.reload();

Сначала добавьте хэш, затем перезагрузите страницу.

Проверено, работает.


ps: Если хэш уже существует в URL-адресе, вы можете захотеть напрямую изменить его, и страница будет перезагружена.

через location.hash вместо .href.

128
ответ дан Derek 朕會功夫 26 August 2018 в 12:31
поделиться

Это сработало для меня:

var tabValue = document.URL;
window.location = tabValue.substring(0, tabValue.lastIndexOf("#"));
window.location.hash = "#tabs-3"; //Whatever is your hash value
location.reload();
-1
ответ дан Amit 26 August 2018 в 12:31
поделиться
var loc = location.hash;
location.hash = " ";
location.hash = loc;
0
ответ дан Ayushi Jha 26 August 2018 в 12:31
поделиться

Попробуйте

           var urlString=window.location.href;
           var url=urlString.split("#")[0];
           window.location.href = url + "#mypara";
-1
ответ дан Hearaman 26 August 2018 в 12:31
поделиться

Это сработало для меня

$('body').on('click', '.className', function () {
    var data = $(this).attr('href');
    alert(data);
    window.location.reload();
});
-1
ответ дан Hemant Sankhla 26 August 2018 в 12:31
поделиться

Эта работа для меня

window.location.href = baseUrl + "#/m/team";
 location.reload();
-1
ответ дан MK Shah 26 August 2018 в 12:31
поделиться

Это действительно старое сообщение, я все равно попытаюсь ответить с правильной комбинацией ответов.

  1. location.reload() и location.reload(true) работает как F5 в браузере. Это приведет к отправке всех данных формы обратно на сервер, если ранее была сделана его загрузка.
  2. location.href не обновляет страницу до тех пор, пока браузер не обнаружит изменение URL-адреса. изменение хэша (#paramname) не подходит для изменения URL и, следовательно, просто выполнение location.href+="#paramname" не будет работать.

Итак, location.href+="?anything#paramname" должен перезагрузить страницу как новый запрос как ?anything - изменение URL.

22
ответ дан pb2q 26 August 2018 в 12:31
поделиться

Я хотел обновить этот вопрос, потому что обнаружил, что использование window.location.href += "#mypara" будет продолжать добавлять параметр к URL-адресу, даже если он существует. Я нашел лучший способ использовать

window.location.hash = "#mypara"
location.reload();
27
ответ дан ug_ 26 August 2018 в 12:31
поделиться
Другие вопросы по тегам:

Похожие вопросы: