这是作业的一部分。当我点击国际时,向下滑动ID应激活子菜单,但它不起作用。有什么建议吗?
我已经仔细检查了HTML上的文件链接
$(document).ready(function() {
$('primary-nav .international').on('click', function(e){
e.preventDefault();
$( "#primary-nav .international" ).siblings().removeClass("active");
$( "#primary-nav .international").toggleClass("active");
if($( "#primary-nav .international" ).hasClass('active')) {
if($("#slide-down").hasClass('open')) {
$('#slide-down .drop.open').hide().removeClass('open');
$('.drop.international').show().addClass('open');
} else {
$('#slide-down .drop').hide();
$('.drop.international').show().addClass('open');
$('#slide-down').slide-down(150).addClass('open');
}
} else {
$('#slide-down').slideup(150).removeClass('open');
}
});
});
答案 0 :(得分:0)
第三行错字
$('primary-nav .international')
应该是
$('#primary-nav .international')
基于代码的其余部分
编辑:此外,您应该缓存其中一些选择器,以使您的代码更具可读性,更不容易出现拼写错误,并且速度更快(即使只是一点点)。例如:
$(document).ready(function() {
$('#primary-nav .international').on('click', function(e){
e.preventDefault();
var obj = this;
$(obj).siblings().removeClass("active");
$(obj).toggleClass("active");
if($(obj).hasClass('active')) {
if($("#slide-down").hasClass('open')) {
$('#slide-down .drop.open').hide().removeClass('open');
$('.drop.international').show().addClass('open');
} else {
$('#slide-down .drop').hide();
$('.drop.international').show().addClass('open');
$('#slide-down').slide-down(150).addClass('open');
}
} else {
$('#slide-down').slideup(150).removeClass('open');
}
});
});
那种事情
你也可以做这样的事情
$('.some-child-of-obj', obj)
为您的选择者提供一些背景信息。