Jquery打开/关闭导航
我正在使用“打开”和“关闭”创建导航列表。但当我点击nav ul li.test a打开隐藏的ul时,什么也没发生。当我使用nav ul li.test时,没有隐藏的ul会打开,但链接不可链接,它们会像父ul一样继续执行功能。我认为这是因为。测试在隐藏ul后关闭,所以它们都是od。测试的一部分。所以我选择了nav-ul-li.测试a,但什么也没发生。下面是一个活生生的例子:Jquery打开/关闭导航,jquery,html,Jquery,Html,我正在使用“打开”和“关闭”创建导航列表。但当我点击nav ul li.test a打开隐藏的ul时,什么也没发生。当我使用nav ul li.test时,没有隐藏的ul会打开,但链接不可链接,它们会像父ul一样继续执行功能。我认为这是因为。测试在隐藏ul后关闭,所以它们都是od。测试的一部分。所以我选择了nav-ul-li.测试a,但什么也没发生。下面是一个活生生的例子: jQuery(文档).ready(函数(){ jQuery('nav ul li.test
-
-
jQuery(文档).ready(函数(){
jQuery('nav ul li.test a')。单击(函数(){
jQuery('nav ul').hide();
jQuery('nav ul li a i')。addClass('fa-plus')。removeClass('fa-plus');
jQuery(this.children('ul').show();
jQuery(this).find('a>i').removeClass('fa-plus').addClass('fa-plus');
返回false;
});
});
您必须更改此选项:
jQuery(document).ready(function () {
jQuery('nav ul li.test a').click(function(){
jQuery('nav ul ul').hide();
jQuery('nav ul li a i').addClass('fa-plus').removeClass('fa-minus');
jQuery(this).next('ul').show(); // change this
jQuery(this).find('a > i').removeClass('fa-plus').addClass('fa-minus');
//add this statement
if(jQuery(this).attr('href') != "#"){
location.href = jQuery(this).attr('href');
}
return false;
});
});
如我所示,您已经将其更改为您的页面:)
在你的OP中,你试图在
元素中找到子元素,但没有子元素。我改变了这一点,现在隐藏列表打开了,但当我点击隐藏列表链接时,不要将我带到另一页,隐藏列表只是关闭,而不是打开另一页。我用您的代码更新了www.studioi.hr/index.php,以便您可以在那里查看。
jQuery(document).ready(function () {
jQuery('nav ul li.test a').click(function(){
jQuery('nav ul ul').hide();
jQuery('nav ul li a i').addClass('fa-plus').removeClass('fa-minus');
jQuery(this).next('ul').show(); // change this
jQuery(this).find('a > i').removeClass('fa-plus').addClass('fa-minus');
//add this statement
if(jQuery(this).attr('href') != "#"){
location.href = jQuery(this).attr('href');
}
return false;
});
});