【问题标题】:How do I use sessions to display a popup after Nth page?如何使用会话在第 N 页后显示弹出窗口?
【发布时间】:2017-02-18 13:02:56
【问题描述】:

我有一个来自 Survey Monkey 的弹出窗口,但它立即弹出。这对任何人都没有任何用处,因为有关用户对网站体验的研究依赖于用户至少使用了几分钟的网站。

我只想在该站点会话的第 N 个(比如说第 7 个)页面上运行此代码。因此,只有在用户深入了解某个网站后,才会要求他们填写调查表。

我是新手,但我知道 javascript 在每次页面加载/刷新时都会重置,因此它本身似乎无法使用 setTimeout。

我在想如果我能以某种方式使用会话跟踪页面数,然后仅在查看的页面数 = x 时加载 javascript,那么它会解决问题,但不确定从哪里开始?

任何想法都将不胜感激,弹出窗口的脚本如下:

(函数(t,e,n,s){var c,o,l;t.SMCX=t.SMCX||[],e.getElementById(s)||(c=e.getElementsByTagName(n),o =c[c.length-1],l=e.createElement(n),l.type="text/javascript",l.async=!0,l.id=s,l.src=["https: "===location.protocol?"https://":"http://","widget.surveymonkey.com/collect/website/js/surveyidnumbergoeshere.js"].join(""),o.parentNode .insertBefore(l,o))})(窗口、文档、“脚本”、“smcx-sdk”);

【问题讨论】:

标签: javascript php session popup


【解决方案1】:

将此代码放在您网站的头部:

session_start();
if(!isset($_SESSION['survey_counter'])
    $_SESSION['survey_counter']=1;

$showSurvey=false;
if($_SESSION['survey_counter']++ >= 7)
{
    $showSurvey=true;
    $_SESSION['survey_counter']=0;
}

以及你想在其中回显 JS 的代码:

if($showSurvey) echo 'YOUR_JAVSCRIPT_CODE';

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-01-16
    • 1970-01-01
    • 1970-01-01
    • 2016-05-30
    • 2021-09-02
    • 1970-01-01
    • 2012-12-31
    • 1970-01-01
    相关资源
    最近更新 更多