Выполнять javascript только для определенного url с добавленным #

Мне нужно выполнить JS на определенной странице с хэштегами в URL-адресе. Мне нужно выполнить JS только на # product2, а затем спрятаться на других.

Мой шаблон URL - /about#product1, /about#product2, /about#product3 и т. д. И код JS:

<script type="text/javascript">
  if( window.location.href.indexOf('/about#product2') !== -1 ) {
   alert('Hello');
}
</script>

Как мне это сделать?

В чем проблема в приведенном выше коде?

Ankit Agarwal 26.10.2018 09:05

Он не может обнаружить about#product2. Работает только на /about. Мне нужно выполнить Javascript только на about#product2 и спрятать на других.

Elaine Byene 26.10.2018 09:07
window.location.hash было бы достаточно для сравнения.
Robby Cornelissen 26.10.2018 09:08
echo '<script>alert("hello");</script>'; - Это PHP. Вы не можете переключать языки программирования в середине функции.
Quentin 26.10.2018 09:08

@RobbyCornelissen: Как? Не могли бы вы показать пример кода? По ссылке показан пример только для ElementID. Я не разбираюсь в JS.

Elaine Byene 26.10.2018 09:10

@Quentin: Подойдет простой alert('hello');.

Elaine Byene 26.10.2018 09:11
0
6
374
1

Ответы 1

Для тех, кто ищет ответ:

<script type="text/javascript">
  if (window.location.href.match(/\#product2/))
    {
      alert('hello');
    }
</script>

Другие вопросы по теме