如何在首次访问时在页面加载时显示带有slimbox的弹出窗口?

时间:2015-07-13 14:00:23

标签: javascript jquery cookies slimbox

到目前为止,我的想法是实现一个函数弹出窗口(“url”)来检查现有的cookie,它是通过加载页面主体来触发的(onLoad - 不是我知道的一个很好的解决方案)。我使用here中的确切代码来实现我在application.js中包含的cookie功能。在那里,我还包括我的popup()功能:

   function popUp(startimage) {
    var x = readCookie('ecocrowd')
    if (x = 'nopopup') {
    }
    else {
        jQuery.slimbox(startimage);
    }

}

在我的开始页面的html模板中,我包含以下部分:

<body onLoad="popup("wirdiezukunft.png")"> 

<script>createCookie('ecocrowd','nopopup',7)</script>

我错过了什么吗?这是我第一次使用这样的Javascript实现,所以我会感激任何帮助。提前致谢!

更新(createcookie()的内容):

function createCookie(name,value,days) {


    if (days) {
            var date = new Date();
            date.setTime(date.getTime()+(days*24*60*60*1000));
            var expires = "; expires="+date.toGMTString();
        }
        else var expires = "";
        document.cookie = name+"="+value+expires+"; path=/";
    }

1 个答案:

答案 0 :(得分:1)

忘记cookie,使用localStorage,因为它有一个更实用的界面,并没有路径,到期和域名的奇怪东西:

if(!window.localStorage.getItem('hasShown')) {
  showMyPopup();
  window.localStorage.setItem('hasShown', true);
}

HTML5中实际上有一个更实用的cookie接口,但它并没有像localStorage那样受到广泛支持。