【问题标题】:include in document.referrer in "else if"在“else if”中包含在 document.referrer 中
【发布时间】:2016-08-23 20:49:52
【问题描述】:

如果没有 cookie,我有一个显示模式的脚本。 第一个如果,如果 cookie 存在,它会隐藏模式, 如果没有cookie,则显示“ELSE”。

我需要添加一个 document.referer 条件,如下所示。

如果cookie不存在,除了验证cookie之外,还要检查referer(下同功能),然后才显示模态。

代码:

jQuery(document).ready(function() {
  if (jQuery.cookie('visits') > 0.5) {
    jQuery('#active-popup').hide();
    jQuery('#popup-container').hide();
    jQuery('html, body').removeAttr('style');
  } else {
    var pageHeight = jQuery(document).height();
    jQuery('<div id="active-popup"></div>').insertBefore('body');
    jQuery('#active-popup').css("height", pageHeight);
    jQuery('#popup-container').show();
    jQuery('html, body', window.parent.document).css({
      'overflow': 'hidden',
      'height': '100%'
    });
  }

  $(document).ready(function() {
    $('#popup-container').css({
      'left': (Math.floor(Math.random() * 15) + 3) + '%'
    })
    $('#popup-container').css({
      'top': (Math.floor(Math.random() * 23) + 33) + '%'
    })
  });
});

推荐人

  if (document.referrer) {
    facebook = /facebook.com/;
    if (facebook.test(document.referrer)) {

    }
  }

【问题讨论】:

  • 我不确定问题是什么?您是否只是想更改“else if (document.referrer && facebook.test(document.referrer))”中的“else”?

标签: javascript jquery cookies referrer


【解决方案1】:

else 更改为else if 与您想要的条件。

jQuery(document).ready(function() {
  facebook = /facebook\.com/;
  if (jQuery.cookie('visits') > 0.5) {
    jQuery('#active-popup').hide();
    jQuery('#popup-container').hide();
    jQuery('html, body').removeAttr('style');
  } else if (document.referrer && facebook.test(document.referrer)) {
    var pageHeight = jQuery(document).height();
    jQuery('<div id="active-popup"></div>').insertBefore('body');
    jQuery('#active-popup').css("height", pageHeight);
    jQuery('#popup-container').show();
    jQuery('html, body', window.parent.document).css({
      'overflow': 'hidden',
      'height': '100%'
    });
  }

  $(document).ready(function() {
    $('#popup-container').css({
      'left': (Math.floor(Math.random() * 15) + 3) + '%'
    })
    $('#popup-container').css({
      'top': (Math.floor(Math.random() * 23) + 33) + '%'
    })
  });
});

【讨论】:

  • 谢谢 Barmar :D 我通过 document.referrer 更改了 document.referer,但不起作用。 :(有什么想法吗?
猜你喜欢
  • 1970-01-01
  • 2018-07-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多