- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
В 2023 году Одноклассники пресекли более 9 млн подозрительных входов в учетные записи
И выявили более 7 млн подозрительных пользователей
Оксана Мамчуева
Переиграть и победить: как анализировать конкурентов для продвижения сайта
С помощью Ahrefs
Александр Шестаков
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
как сделать, чтобы скрипт сам определял последнюю ссылку в подменю?
$('.nav-top__sp ul li:last-child a').focusout( function () { $(this).parents('.nav-top__sp').removeClass('focus-menu'); } );Еще хотелось бы добавить, чтобы при клике за пределами подменю оно пропадало
Вот с этим сложнее, могу только сделать, чтобы при любом клике оно пропадало
$('*').on('click', function(){ $('.nav-top__sp').removeClass('focus-menu'); });Чтобы за пределами - простого ничего в голову не приходит.
Вот с этим сложнее, могу только сделать, чтобы при любом клике оно пропадало
Чтобы за пределами - простого ничего в голову не приходит.
Спасибо большое за подсказку с :last-child. Забыл про неё.
По-поводу клика вне блока подменю нашёл такой вариант. Вроде всё работает. Собственно весь код
$(document).ready(function () {$('.nav-top a').focus(
function () {
$(this).parents('.nav-top__sp').addClass('focus-menu');
}
);
$('.nav-top__sp ul li:last-child a:last-child').focusout(
function () {
$(this).parents('.nav-top__sp').removeClass('focus-menu');
}
);
$(document).click(
function (e) {
if (!$('.nav-top__sp ul').is(e.target)) {
$('.nav-top__sp').removeClass('focus-menu');
};
});
});
Буду признателен подсказке, если считаете, что что-то не так или лучше сделать по-другому
По-поводу клика вне блока подменю нашёл такой вариант. Вроде всё работает.
Да, в вашем случае работает. Благодаря тому, что элемент <li> полностью заполняется элементом <a>. Так что сойдёт.
Когда при помощи Tab делаю фокус на ссылку, нужно чтобы к родительскому элементу с классом nav-top__sp добавлялся ещё один класс.
вам класс нужно добавить или стили какие-то применить?
Если второе - то вам вообще не нужен js