Как предотвратить привязку со строкой запроса от перезагрузки страницы

javascript #php #anchor

#javascript #php #привязка

Вопрос:

Как мне запретить привязке перезагружать страницу, когда в URL включены строки запроса. Ниже приведена ссылка, которая перезагружает страницу перед перенаправлением непосредственно на раздел.

 <a href="https://iamhoste.com/experiences/?in-home-chef-experiences/#explore">Explore Experiences</a>
 

Нажатие на эту ссылку перезагружает страницу, а затем перенаправляет на раздел (#explore). В любом случае я могу предотвратить перезагрузку.

Комментарии:

1. Измените href=»#explore» только это

2. Если это то, что вы хотели, я дам подробный ответ!

3. @lost_in_magento Я уже делал это, но он все равно перезагружает страницу, а затем перенаправляет на раздел. Цель здесь не в том, чтобы перезагрузить страницу и перейти к разделу #explore .

4. Он не должен перезагружаться, если вы действительно были на этом точном URL (за вычетом фрагмента) раньше. Я предполагаю, что вы, вероятно, не были точно включены https://iamhoste.com/experiences/?in-home-chef-experiences/ , но, возможно, что-то вроде https://iamhoste.com/experiences/?in-home-chef-experiences , без завершающей косой черты …?

5. @CBroe Я нахожусь iamhoste.com/experiences/?in-home-chef-experiences со строками запроса. Ссылка iamhoste.com/experiences/?in-home-chef-experiences#explore который должен перейти к разделу #explore, но он перезагружает страницу. Я что-то упустил?

Ответ №1:

 <section id="explore">
  ...
</section>
.
.
.
<div>
  <a href="#explore">The section you want to explore</a>
</div> 

Это может помочь вам перейти к нужному разделу без какой-либо головной боли при перезагрузке

Комментарии:

1. URL имеет параметры запроса. Таким образом, он перезагружает страницу перед переходом к нужному разделу. Например , для iamhoste.com/experiences/?in-home-chef-experiences Нажмите кнопку «Изучить наш опыт» на этой странице.

2. Поскольку это URL-адрес, он выполняет свое поведение по умолчанию (http-запрос-ответ), и это всегда будет приводить к перезагрузке вашей страницы. Итак, лучше вызвать раздел (ту же веб-страницу, что и та, о которой я упоминал выше), используя ссылку, а не запрашивая всю страницу снова.

3. У меня действительно такая же структура, как и у вас. Нажатие на ссылку добавляет #explore в URL-адрес и перезагружает страницу.

4. Как и в моем предыдущем опыте, #explore добавит к исходному URL-адресу, но при нажатии на него страница не будет перезагружена.

Ответ №2:

Добавьте атрибут ‘target’ в тег привязки и напишите в нем «_blank», например: target = «_blank»

в вашем случае : <a href="https://iamhoste.com/experiences/?in-home-chef-experiences/#explore" target="_blank">Explore Experiences</a>

насколько мне известно, это должно сработать

Комментарии:

1. target=»_blank» откроет страницу в новой вкладке. Цель здесь — перенаправить на раздел #explore без перезагрузки страницы