@L1nw0od

Просто JS действие?

Здравствуйте, скажите пожалуйста можно ли сделать js или jquery таку штуку.
Если в адресе страницы присутствует название из ссылки то мы этой ссылке присваиваем класс ?
---
Другими словами, если в адресе сайта есть адрес страницы index1 или index2 то ссылке которая содержит эту страницу мы присваиваем клас ?
Есть:
<a href="https://site-name/index1">Name 1</a>
<a href="https://site-name/index2">Name 2</a>
<a href="https://site-name/index3">Name 3</a>
  • Вопрос задан
  • 134 просмотра
Решения вопроса 1
potapchino
@potapchino
document.querySelectorAll('a').forEach(link => {
  if (link.pathname === window.location.pathname) {
    link.classList.add('active')
  } else {
    link.classList.remove('active')
  }
})
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 4
Anitamsk
@Anitamsk
Frontend Dev
<script>
$(document).ready(function(){

if(window.location.pathname == '/index.php/pages') {
$('a.custom-class').addClass("add-custom-class");
}
})
</script>
Ответ написан
Комментировать
@BATPYIIIKOB
PHP, JS
Легко! Используйте класс для работы с URL.
Получить текущий адрес:
let url = new URL(document.location.href)
делайте разбор и анализ url, советую посмотреть на
console(document.location);
console(document.location.pathname);

там вы найдёте разбор вашего URL, и сможете дёрнуть необходимый параметр, либо ссылку для анализа.

После чего формируете ссылку с необходимым классом в зависимости от условий.
Ответ написан
Комментировать
sinneren
@sinneren
`window.location.pathname` - тут ваши параметры ссылки
$('a[href$=window.location.pathname]').addClass('myclass');
примерно так.
Ответ написан
Комментировать
@sHARek
Можно.
Получите атрибут href, обрежьте/регекс/посчитать кол-во символов с конца/начала. Проверить условием. Добавить класс.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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