基金会 6 off-canvas 未关闭
Foundation 6 off-canvas not closing
我有以下 link:http://www.alessandrosantese.com/test/aldemair-productions/
当您单击中间的跳过按钮时,您将转到下一张幻灯片,其中实施了 FOundation 6 canvas。
我的 header 包括切换 off-canvas 的按钮在关闭 canvas 菜单之外,它看起来像这样:
<header class="fixed close">
<div class="hamburger" data-toggle="sth">
<button type="button">
<span></span>
<span></span>
<span></span>
</button>
<span class="menu">Menu</span>
</div>
<div class="logo">
<h1>Aldemar</h1>
<span>productions</span>
</div>
<span class="mail-icon float-right" data-open="contact-us">
</span>
</header>
我有以下 js 来关闭 off-canvas 菜单:
$('.hamburger').on('click', function(e){
e.preventDefault();
if($('header').hasClass('close')){
$('header').removeClass('close').addClass('open');
$(this).find('button').toggleClass('open');
$('body').addClass('block-view');
}
else {
$('.off-canvas').foundation('close');
$('header').removeClass('open').addClass('close');
$(this).find('button').toggleClass('open');
$('body').removeClass('block-view');
$('#sth').foundation('close');
}
});
但这不起作用:$('#sth').foundation('close');它不会关闭菜单
当菜单是关闭并且 header 滑回左侧。尝试在 $('header').removeClass('open').addClass('close')
.
之后删除那些 classes
或者,如果可以根据文档 (http://foundation.zurb.com/sites/docs/off-canvas.html) 设置 Foundation off-canvas classes,则不需要编写自定义事件来切换菜单。
所以在删除 "data-toggle="sth"" 之后,我更新了我的 js:
$('.hamburger').on('click', function(e){
e.preventDefault();
if($('header').hasClass('close')){
$('header').removeClass('close').addClass('open');
$(this).find('button').toggleClass('open');
$('body').addClass('block-view');
$('#sth').foundation('open');
}
else {
$('.off-canvas').foundation('close');
$('header').removeClass('open').addClass('close');
$(this).find('button').toggleClass('open');
$('body').removeClass('block-view');
$('#sth').foundation('close');
}
});
我不得不手动打开和关闭菜单
我有以下 link:http://www.alessandrosantese.com/test/aldemair-productions/
当您单击中间的跳过按钮时,您将转到下一张幻灯片,其中实施了 FOundation 6 canvas。
我的 header 包括切换 off-canvas 的按钮在关闭 canvas 菜单之外,它看起来像这样:
<header class="fixed close">
<div class="hamburger" data-toggle="sth">
<button type="button">
<span></span>
<span></span>
<span></span>
</button>
<span class="menu">Menu</span>
</div>
<div class="logo">
<h1>Aldemar</h1>
<span>productions</span>
</div>
<span class="mail-icon float-right" data-open="contact-us">
</span>
</header>
我有以下 js 来关闭 off-canvas 菜单:
$('.hamburger').on('click', function(e){
e.preventDefault();
if($('header').hasClass('close')){
$('header').removeClass('close').addClass('open');
$(this).find('button').toggleClass('open');
$('body').addClass('block-view');
}
else {
$('.off-canvas').foundation('close');
$('header').removeClass('open').addClass('close');
$(this).find('button').toggleClass('open');
$('body').removeClass('block-view');
$('#sth').foundation('close');
}
});
但这不起作用:$('#sth').foundation('close');它不会关闭菜单
当菜单是关闭并且 header 滑回左侧。尝试在 $('header').removeClass('open').addClass('close')
.
或者,如果可以根据文档 (http://foundation.zurb.com/sites/docs/off-canvas.html) 设置 Foundation off-canvas classes,则不需要编写自定义事件来切换菜单。
所以在删除 "data-toggle="sth"" 之后,我更新了我的 js:
$('.hamburger').on('click', function(e){
e.preventDefault();
if($('header').hasClass('close')){
$('header').removeClass('close').addClass('open');
$(this).find('button').toggleClass('open');
$('body').addClass('block-view');
$('#sth').foundation('open');
}
else {
$('.off-canvas').foundation('close');
$('header').removeClass('open').addClass('close');
$(this).find('button').toggleClass('open');
$('body').removeClass('block-view');
$('#sth').foundation('close');
}
});
我不得不手动打开和关闭菜单