@mauscode

Получение значения в адресной строке jQuery?

Здравствуйте!
Подскажите пожалуйста как мне отследить значение в адресной строке?
Мне нужно открывать модальное окно, только если в ссылке есть значение agronavigator
К примеру, если ссылка содержит это слово выполняется условие, если нет то ничего не происходит.
Вот ссылка будет такая test.ru/?utm_source=yandex&utm_zapros=agronavigator
Я пробовал сделать так, но ничего не получается:
switch(location.hash){
     case "agronavigator" :
          $('.news').fadeIn();
          break;
     // действия, когда url -> site.com/lol.php
     case "" :
          alert('Выберите категорию');
          break;
     default :

}

Подскажите пожалуйста, заранее очень благодарен
  • Вопрос задан
  • 3614 просмотров
Решения вопроса 1
Vlad_IT
@Vlad_IT Куратор тега JavaScript
Front-end разработчик
var url_string = window.location.href
var url = new URL(url_string);
var utm = url.searchParams.get("utm_zapros");
// в переменной utm будет содержаться значение параметра utm_zapros, дальше тупо определяйте его значение.
// Если параметра нет, то utm===null

UPD: ну или можно тупо искать в URL строке нужную строку.
if(location.toString().indexOf('agronavigator') !== -1) {
// Есть agronavigator
}
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
@ISE73
Вместо location.hash:

var url = new URL(location);
var utm_zapros = url.searchParams.get("utm_zapros");
switch(utm_zapros) {
...
...
Ответ написан
Комментировать
@hurgadan
Вы не там ищите, agronavigator это не hash.
if(location.search.indexOf('utm_zapros=agronavigator')>0) {
   $('.news').fadeIn();
}
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы