Показать сообщение отдельно
  #7 (permalink)  
Старый 08.08.2018, 11:32
Профессор
Отправить личное сообщение для Nexus Посмотреть профиль Найти все сообщения от Nexus
 
Регистрация: 04.12.2012
Сообщений: 3,794

Стремно такое публиковать, но...
const patterns = [];
let url = location.href.replace(/\/(ru|ua)/g, '');

patterns.push(url);
if (url.substr(-1) === '/') {
    url = url.substr(0, url.length - 1);
    patterns.push(url);
};
url = url.split(location.host, 2).pop();
patterns.push(url);
if (url.substr(0, 1) === '/') {
    url = url.substr(1);
    patterns.push(url);
};
if (url.indexOf('#')) {
    patterns.push(
        url.split('#').shift(),
        '/' + url.split('#').shift()
    );
};
if (url.indexOf('?')) {
    patterns.push(
        url.split('?').shift(),
        '/' + url.split('?').shift()
    );
};

patterns.forEach(function(href) {
    const list = document.querySelectorAll('.menu-item a[href="' + href + '"]');
    if (list)
        list.forEach(function(node) {
            node.classList.add('active');
        });
});
Ответить с цитированием