基础6未关闭

Foundation 6 off-canvas not closing

本文关键字:基础      更新时间:2023-09-26

我有以下链接:http://www.alessandrosantese.com/test/aldemair-productions/

当您单击中间的"跳过"按钮时,您将看到下一张幻灯片,该幻灯片实现了FOundation6脱离画布。

我的标题包括切换画布外的按钮,它在画布外菜单之外,看起来是这样的:

        <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来关闭画布外菜单:

$('.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');它不会关闭菜单

当菜单关闭并且标题滑回左侧时,类为off-canvas-wrapper-innerdiv似乎仍然具有类is-off-canvas-openis-open-left。尝试在$('header').removeClass('open').addClass('close')之后删除这些类。

或者,如果可以根据文档设置Foundation画布外类(http://foundation.zurb.com/sites/docs/off-canvas.html),您不需要编写自定义事件来切换菜单。

所以在删除"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');
    }
});

我不得不手动打开和关闭菜单