首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在页面加载10秒后继续执行此函数。

在页面加载10秒后继续执行此函数。
EN

Stack Overflow用户
提问于 2018-04-09 08:49:05
回答 2查看 40关注 0票数 0

我创建了这个函数来检查用户的cookie,然后显示一个时事通讯弹出窗口。我需要加载后,用户花了10秒在网站导航这一点。我使用过window.setTimeout,但到目前为止它还不起作用。除了这个10秒的延迟执行之外,这个脚本运行得很好。知道我做错了什么吗?

代码语言:javascript
复制
theme.ModalNewsletter = function() {
  if ($.cookie('tada-cookies')) {
  } 
  else {
    var el = $('#newslettermodal');
    if (el.length) {
      $('#newslettermodal').removeClass("hide");
      $.magnificPopup.open({
        items: {
          src: el
        },
        type: 'inline'
      });
    }

  }
  $.cookie('tada-cookies', 'true', { expires: 7});
}

EN

回答 2

Stack Overflow用户

发布于 2018-04-09 09:06:38

确保超时传递的是函数本身,而不是执行它。

正确的方法:

setTimeout(theme.ModalNewsletter, 10000);

错误的方式:

setTimeout(theme.ModalNewsletter(), 10000);

票数 0
EN

Stack Overflow用户

发布于 2018-04-09 20:45:30

这是正确的方法吗?

代码语言:javascript
复制
setTimeout(theme.ModalNewsletter, 10000); {
theme.ModalNewsletter = function() 

  if ($.cookie('tada-cookies')) {
  } 
  else {
    var el = $('#newslettermodal');
    if (el.length) {
      $('#newslettermodal').removeClass("hide");
      $.magnificPopup.open({
        items: {
          src: el
        },
        type: 'inline'
      });
    }

  }
  $.cookie('tada-cookies', 'true', { expires: 7});
}

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49724225

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档