javascript - 仅向来自 Facebook 的用户显示 DIV

标签 javascript jquery referrer

我想在产品页面上向用户显示特定的 DIV,前提是他们来自 Facebook。

目前我正在使用它来确认它们来自 Facebook:

var ref = document.referrer;

if (ref.match(/^https?:\/\/([^\/]+\.)?facebook\.com(\/|$)/i)){
    console.log('User arrived from Facebook')
    } else  {
        console.log('User DID NOT arrive from Facebook')
    }

这似乎运作良好,但如果他们首先访问另一个页面则不起作用。因此,如果他们直接进入产品页面,它会识别出他们来自 FB,但是如果有人先从 FB 进入主页,然后访问产品页面,则无法识别他们。

最佳答案

建议可以使用 localStorage 保留标志,这样当用户第一次访问您网站的任何部分时,请像您一样检查引荐来源网址,但如果引荐来源网址检查,请添加此代码段作为 Facebook,

localStroage.setItem('from_facebook', true);

然后在您的产品页面上检查该 key 是否存在,

if (localStorage.getItem('from_facebook') !== null) {
    /** Show DIV. **/
}

很明显,现在即使他们不是来自 Facebook,它也会显示它(意思是如果他们来过一次,那么他们将永远看到它),所以您可以做的是在您的产品页面上添加以下代码段显示 div 后,

localStorage.removeItem('from_facebook');

现在它将显示 div,然后 from_facebook 将从存储中删除,所以现在它取决于每个请求。

关于javascript - 仅向来自 Facebook 的用户显示 DIV,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45881996/

相关文章:

php - 我使用时未定义 jquery

javascript - 为什么我的 text() 函数在我的脚本中不起作用?

Android Google Play 意向引荐来源网址

android - 如何使用 Google Analytics 跟踪来自 Google Play 的引荐来源安装?

android - 无法解析 : com. android.installreferrer:installreferrer

javascript - 如何在整个文档中搜索特定单词及其前一个单词(在java脚本中)

Javascript - 全局替换标签之间的字符串

javascript - 尝试使用 jQuery 选择父 DOM 中的隐藏字段

javascript - 在 href Click 上加载 Google map 中的位置

jquery - 单击div后如何更改标题