【问题标题】:Load bootstrap Modal on first visit to site首次访问站点时加载引导模式
【发布时间】:2012-12-12 10:37:59
【问题描述】:

我正在尝试实现一个订阅框,它会在您第一次访问该网站时激活。

当您第一次访问该网站时,订阅模式没有加载,我不知道为什么?

<script type="text/javascript">
jQuery.noConflict();
jQuery(document).load(function(){
         // load the overlay
        if (document.cookie.indexOf('visited=true') == -1) {
            var fifteenDays = 1000*60*60*24*15;
            var expires = new Date((new Date()).valueOf() + fifteenDays);
            document.cookie = "visited=true;expires=" + expires.toUTCString();
            jQuery.modal({width:"580px", inline:true, href:"#myModal"});
        }
    });
</script>

我可以通过单击链接来加载模式,但我需要在用户首次访问时自动弹出。谁能看到我的代码有什么问题?

【问题讨论】:

    标签: jquery twitter-bootstrap


    【解决方案1】:

    首先你指的是:

    jQuery('#myModal')
    

    后来你指的是:

    jQuery('.myModal')
    

    它是一个类还是一个id?这可能是你的错误。

    在旁注中,您可能希望在脚本标签上指定语言属性。

    【讨论】:

    • 我对代码进行了一些更改,但在首次访问该网站时仍然无法加载。我已清除缓存和 cookie,但什么也没有 - 仍在尝试修复!
    • 感谢我的朋友,我让它可以使用 jQuery(window).load(function() 而不是 jQuery(document).ready(function()
    【解决方案2】:

    bootstrap 中的模态函数没有 href 选项。您要做的是针对实际的模态元素,然后在其上调用模态函数以将其激活为模态。像这样;

     jQuery('#myModal').modal(options)
    

    查看documentation 了解可用选项

    另外,例如 jsfiddle here

    【讨论】:

    • 感谢您的建议。唯一的问题是,只要页面加载,Modal 就会激活(我将它用于主页)。我需要找到它只加载一次然后设置 cookie 的方法,因此如果用户再次导航到主页,则模式在 cookie 过期之前不会加载。
    • 我没怎么用过cookies,但乍一看你的逻辑似乎没问题。只要浏览器允许cookies,那是什么?我认为问题在于以编程方式触发模态,并且意味着您可以用我的示例更改最后一行代码(jQuery.modal 行)。
    【解决方案3】:
    $(document).ready(function(){
    
        if (document.cookie.indexOf('visited=true') == -1) {
            var fifteenDays = 1000*60*60*24*15;
            var expires = new Date((new Date()).valueOf() + fifteenDays);
            document.cookie = "visited=true;expires=" + expires.toUTCString();
            $('#flag').trigger('click');
         $('#myModal').modal('toggle');
        }
    
    });
    

    这是我给你的脚本。

    【讨论】:

    • 这是自动点击@vipin的div
    猜你喜欢
    • 2021-01-11
    • 2013-05-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-23
    • 2014-04-14
    相关资源
    最近更新 更多