我对编码非常陌生,尤其是Javascript。我最近找到了一个教程,我必须为手风琴菜单工作,但我无法理解如何在页面加载时关闭下拉菜单。目前,当页面加载时,所有下拉列表都会打开。我试着看其他解决方案,但我还没完全理解代码。非常感谢你!
(function($){
$(document).ready(function(){
$('#cssmenu li.active').addClass('open').children('ul').show();
$('#cssmenu li.has-sub>a').on('click', function(){
$(this).removeAttr('href');
var element = $(this).parent('li');
if (element.hasClass('open')) {
element.removeClass('open');
element.find('li').removeClass('open');
element.find('ul').slideUp(200);
}
else {
element.addClass('open');
element.children('ul').slideDown(200);
element.siblings('li').children('ul').slideUp(200);
element.siblings('li').removeClass('open');
element.siblings('li').find('li').removeClass('open');
element.siblings('li').find('ul').slideUp(200);
}
});
});
})(jQuery);
答案 0 :(得分:0)
替换
$('#cssmenu li.active').addClass('open').children('ul').show();
在第4行
$('#cssmenu li.active').removeClass('open').children('ul').hide();
答案 1 :(得分:0)
您仅在点击时触发了展开操作。只需在DOM元素上设置第一个状态。
<div style="display: none;"></div>
或者默认情况下控制“关闭”类名而不是“打开”