javascript - Jquery Cookie 通过模态显示/隐藏菜单

标签 javascript jquery html css cookies

我正在尝试设置 2 个不同的导航菜单,对于第一次访问者(站点范围),我希望他们首先显示一个模态,他们必须在其中选择(强制性)他们应该选择哪个版本,然后相应的导航将是显示在页面上 - 但这必须通过 cookie 记住,并且应在 30 天内过期。根据他们在模态表单上点击的内容,只会显示一个版本的导航菜单。

代码示例:

<div id="menu-A">
    <ul>
       <li><a href="#">Item</a></li>
       <li><a href="#">Item</a></li>
       <li><a href="#">Item</a></li>
    </ul>
</div>

<div id="menu-B">
    <ul>
       <li><a href="#">Item</a></li>
       <li><a href="#">Item</a></li>
       <li><a href="#">Item</a></li>
       </ul>
    </div>


        <!-- modal -->
        <div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
            <div class="modal-dialog">
                <div class="modal-content">
                    <div class="modal-header">
                        <button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">&times;</span><span class="sr-only">Close</span></button>
                        <h4 class="modal-title" id="myModalLabel">Choose Your Setting - Split Nav</h4>
                    </div>
                    <div class="modal-body">
                        <div class="btn-group">
                            <button class="btn btn-primary btn-large btn-navA">Menu A</button>
                            <button class="btn btn-success btn-large btn-navB">Menu B</button>
                        </div>
                    </div>
                    <div class="modal-footer remove-top">
                        <button type="button" class="btn btn-primary">Save Settings</button>
                    </div>
                </div>
            </div>
        </div>

我搜索了整个网站,我忘记了下面这段代码的 OP:

if ($.cookie('pop') == null) {
    $('#myModal').modal('show');
    $.cookie('pop', '30');
} 

我仍在苦苦思索如何才能为首次访问者弹出该模式并提供 2 个选择,无论是导航 A 还是导航 B,然后点击保存。一旦他们选择了一个选项,就应该只显示一个导航据我了解,jQuery cookie 至少应该保存用户的首选项直到过期,但是在脚本和 cookie 方面我完全是个菜鸟:(

最佳答案

if($.cookie('MenuChoice')) {
    //show menu based on saved choice
}
else {
    //show modal
}

用户选择保存后:

$.cookie('MenuChoice', CHOICE)

关于javascript - Jquery Cookie 通过模态显示/隐藏菜单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25572327/

相关文章:

javascript - 在 keyup 和 regex 上测试用户输入

javascript - 根据索引选择一系列 dom 元素

javascript - jQuery 和 jQuery UI 代码未运行

javascript - 使用 chrome 进行 OfflineAudioContext FFT 分析

javascript - Electron 主流程脚本是否可以通过 `postMessage`函数监听页面发布的消息?

javascript - 在 Angular 中重构 $rootScope.$apply

javascript - Sequelize 复杂的连接查询以使用 findAll

asp.net - 禁用验证器但验证器标注仍然显示并导致验证

javascript - 如何通过滚动在页面的特定部分执行 jquery 插件?

javascript - 如何在 selectize.js 中设置默认值?