Как сделать что бы первый клик открывал подменю, а второй делал переход по ссылке?

Есть такое меню:
<table>
    <tbody>
        <tr>
            <td class="menu-item">
                <div class="wrap">
                    <a class="dropdown-toggle" href="/link/">Пункт меню</a>
                    <ul class="dropdown-menu">Выпадающее меню</ul>
                </div>
            </td>
            <td class="menu-item">
                <div class="wrap">
                    <a class="dropdown-toggle" href="/link/">Пункт меню</a>
                    <ul class="dropdown-menu">Выпадающее меню</ul>
                </div>
            </td>
            <td class="menu-item">
                <div class="wrap">
                    <a class="dropdown-toggle" href="/link/">Пункт меню</a>
                </div>
            </td>
        </tr>
    </tbody>
</table>

и js код
$(document).ready(function() {
    $(.menu-item:not([last_item]) .wrap a.dropdown-toggle').click(function(e) {
        e.preventDefault();
    });
    $('.menu-item .wrap a.dropdown-toggle').on('click', function () {
        if ($(this).parent().hasClass('menu-active')) {
            $(this).parent().removeClass('menu-active');
        } else {
            $(this).parent().addClass('menu-active');
        }
        $('.menu-item .wrap a.dropdown-toggle').not(this).parent().removeClass('menu-active');
    });
});

Сейчас при нажатии на Пункт меню к классу .wrap добавляется класс .menu-active и через CSS выводится Выпадающее меню.

Как сделать так, что бы клике на открытый Пункт меню осуществлялся переход по ссылке?
  • Вопрос задан
  • 395 просмотров
Решения вопроса 1
Eridani
@Eridani
Мимо проходил
При первом проверять, нет ли класса active (который вешаем при первом клике), если нету, то превентдефолт, если класс есть - превентдефолта быть не должно, и тогда обычный переход
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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