Я хочу сделать следующее для меню на мобильных устройствах: На одном щелчке дети должны опускаться. Но при двойных щелчках он должен забрать меня прямо на его страницу. Например. У элемента есть дети, и у меня также есть ссылка, которая выводит меня на страницу. Если я нажму на него, подпункт должен отображаться как элементы блоков. Но если я дважды щелкнул, он должен был взять меня прямо по ссылке (в данном случае на страницу About).Как активировать подменю только с одним щелчком мыши
Я попытался это:
$(document).ready(function(){
var clicks = 0;
$("ul#primary > li.menu-item-has-children").click(function(e) {
clicks++;
if(clicks === 1)
{
e.preventDeafult();
$("ul#primary > li.menu-item-has-children ul.sub-menu").css("display","block");
}
else if(clicks > 1) {
window.location($(this).attr("href"));
}
});
});
Видимо, заявление еще выполняется. Но когда я нажимаю в первый раз, подменю не отображается.
Я также попытался использовать slideToggle() вместо свойства css, но он не работает. К сожалению, сайт по-прежнему находится на тестовом домене и защищен паролем, поэтому я не могу вставить ссылку здесь. Надеюсь, вы сможете помочь.
JQuery имеет двойную функцию щелчка, которая может помочь. https://api.jquery.com/dblclick/ –
Есть ли только один «список»? Если нет, попытка развернуть второй список приведет к эксцессу оператора 'else'. –
Скорее проверьте, если текущий список кликов уже расширен, а затем следуйте инструкциям href. –