3

Например, если есть закладки:

https://gymhuntr.com/#37.3573,-122.0176
https://gymhuntr.com/#37.4504,-122.1791

Затем, если вы добавите их в закладки и посмотрите на первую страницу, а затем на вторую страницу, второй URL-адрес не вызовет перезагрузку правильного местоположения, поскольку браузер считает, что это та же страница, но с другим «хэш-тегом».

Чтобы заставить его работать, мы должны сначала перейти на совершенно другой URL, например на google.com, а затем использовать второй URL для его работы.

Есть ли способ добавить его в закладки, чтобы он работал? (даже используя букмарклет?)

1 ответ1

1

Вы правы, страница не перезагружается просто путем изменения хеша. Вы могли бы подумать, что букмарклет может сделать что-то вроде этого:

javascript:(function() {
    location.href="http://google.com";
    location.href="https://gymhuntr.com/#37.3573,-122.0176";
})();

Но это не работает, потому что изменение URL-адреса немедленно приводит к остановке выполнения букмарклета, поэтому второй файл location.href никогда не устанавливается.

Даже если вы поместите 2-й файл location.href в setTimeout() и поместите его перед изменением URL на google, он все равно никогда не будет выполнен.

Если вы не хотите открывать новую вкладку, вы можете сделать следующее:

javascript:(function(){ open("https://gymhuntr.com/#37.3573,-122.0176")})()

Но это не похоже на то, что вы хотите. К счастью, этот конкретный сайт перенаправляет все вызовы с http на https, поэтому решение для этого сайта (и, вероятно, большинства других сайтов HTTPS) состоит в том, чтобы изменить две закладки:

http://gymhuntr.com/#37.3573,-122.0176
http://gymhuntr.com/#37.4504,-122.1791

И они будут перенаправлять на соответствующую страницу HTTPS, и вы можете легко переключаться между ними.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .