Php 在网站上停留60秒后,弹出

Php 在网站上停留60秒后,弹出,php,javascript,jquery,Php,Javascript,Jquery,嗯,我试图找到一个解决方案,我认为这可能会奏效: 在PHP文件上: $liguem = getdate(); $liguemoff = $_COOKIE['liguemoff']; $liguemon = $_COOKIE['liguemon']; if(empty($liguemoff)){ setcookie('liguemoff',$liguem[0],time() + (50000)); } setcookie('liguemon',$liguem[0],time() +

嗯,我试图找到一个解决方案,我认为这可能会奏效:

在PHP文件上:

$liguem = getdate();

$liguemoff = $_COOKIE['liguemoff'];
$liguemon = $_COOKIE['liguemon'];

if(empty($liguemoff)){
    setcookie('liguemoff',$liguem[0],time() + (50000));
}

setcookie('liguemon',$liguem[0],time() + (20000));



$body->assign("COOKIE2", $liguemoff);
$body->assign("COOKIE3", $liguemon);
这有一些主体分配,因为我正在使用XTemplate,但PHP只是PHP

现在在索引文件上,一些JavaScript:

var cookie2 = {COOKIE2};
var cookie3 = {COOKIE3};

if( cookie3-cookie2 > 60){
    alert('alerta');
};
事实是它是有效的!人们可能不会导航,但这正是我想要的,只有在访问者看到至少2页(服务器端的东西)后,弹出窗口才会打开

主要问题是,我无法使函数
popup()触发警报显示的位置。不过警报工作正常。。。。有什么提示吗

附言:

这是
popthat()功能:

function popthat(){
    $("#darkside").css('opacity','0.3').fadeIn('slow');
    $("#darkside").click(function () { 
    $(this).css('opacity','1').fadeIn('fast');
    $("#liguem").hide();
    });
        $("#liguem").corner();
    $("#liguem").hide();
    $("#liguem").delay(200).css('visibility','visible');
    $("#liguem").fadeIn('fast');
}

浏览器会自动阻止在页面加载时初始化的弹出窗口,因为没有人喜欢这些类型的弹出窗口。

浏览器会自动阻止在页面加载时初始化的弹出窗口,因为没有人喜欢这些类型的弹出窗口。

当您执行
警报()
时,脚本的执行会停止
alert()
是一个阻止函数,在继续之前不会发生任何事情。

执行
alert()
时,脚本的执行将停止
alert()
是一种阻止功能,在继续之前不会发生任何事情。

您可以设置超时,以便在指定的时间后显示弹出窗口。这段时间可以由PHP指示,因为服务器端代码可以通过页面视图跟踪站点上的时间。这样,即使用户没有导航到其他页面,也可以在60秒后在站点上显示弹出窗口

比如:

setTimeout(popthat, <?php echo $_COOKIE[...]; ?>);
setTimeout(popthat,);
您的PHP将在弹出窗口显示之前回显毫秒数


注意:当您用
popthat()
函数替换
alert()
时,DOM可能未准备就绪,
popthat()
将无法工作,因为它找不到任何与选择器匹配的元素。请尝试在
文档上运行代码。就绪
$(function(){});
)。

您可以设置超时,以便在指定的时间后显示弹出窗口。这段时间可以由PHP指示,因为服务器端代码可以通过页面视图跟踪站点上的时间。这样,即使用户没有导航到其他页面,也可以在60秒后在站点上显示弹出窗口

比如:

setTimeout(popthat, <?php echo $_COOKIE[...]; ?>);
setTimeout(popthat,);
您的PHP将在弹出窗口显示之前回显毫秒数


注意:当您用
popthat()
函数替换
alert()
时,DOM可能未准备就绪,
popthat()
将无法工作,因为它找不到任何与选择器匹配的元素。试着在
文档上运行代码。ready
$(function(){});
)。

我不知道您是否刚刚输入了一个错误,但是您的函数名为popthat(),并且在您的语句中您说您调用了函数popup()。您需要更改popup();使…成为;除非我说过这是一个错误,否则我不知道您是否只是输入了一个错误,但是您的函数名为popthat(),在您的语句中您说您调用了函数popup()。您需要更改popup();使…成为;除非我说过这是一个错误,否则我将为您添加更多信息以查看弹出窗口。这是jquery制作的,不是一个真正的弹出窗口。你不认为这可能是相关信息吗?你的意思是这是一个浮动div覆盖,不是一个window.open()类型的东西吗?@ceejayoz事实上,这并不重要,因为我不能在if语句中触发任何类型的函数。我想这以前从未发生过。。。如果弹出窗口被阻止,我会看到浏览器发出的警告。@Marc B,是的,你是对的。但是弹出窗口工作得很好。我会为你添加更多信息以查看弹出窗口。这是jquery制作的,不是一个真正的弹出窗口。你不认为这可能是相关信息吗?你的意思是这是一个浮动div覆盖,不是一个window.open()类型的东西吗?@ceejayoz事实上,这并不重要,因为我不能在if语句中触发任何类型的函数。我想这以前从未发生过。。。如果弹出窗口被阻止,我会看到浏览器发出的警告。@Marc B,是的,你是对的。但是弹出窗口工作得很好。