1

我有一个带有 jQ​​uery 灯箱的网页,它会在页面加载时自动打开。在灯箱中,我实现了 Facebook Like 按钮(这是电子邮件中 ​​Facebook Like 按钮的 2 单击解决方案)。现在,当 Facebook 用户通过单击 Facebook 上的“喜欢”URL 访问我的网页时,我想关闭灯箱。我不想创建两个不同的页面(一个打开灯箱,另一个关闭),我想我可以通过使用 Javascript 向 URL 添加一个参数然后根据该参数打开/关闭灯箱来避免这种情况. 这是一种安全的方法吗?我该怎么做?

4

2 回答 2

1

您可以使用我在这里找到的这个 JS 函数获取 URL 参数:

function getUrlVars() {
    var vars = {};
    var parts = window.location.href.replace(/[?&]+([^=&]+)=([^&]*)/gi, function(m,key,value) {
        vars[key] = value;
    });
    return vars;
}

然后 *add use ?lightbox=1egwww.example.com?lightbox=1并使用上述函数读取它:

if(getUrlVars()["lightbox"]=="1"){
    //...
}

*要添加参数,您可以:

  • 更改链接 href 属性element.href = "http://www.newURL.com?param=1";并等待用户单击它们
  • 重定向到新位置window.location.href = "http://www.newURL.com?param=1";
于 2012-04-20T04:37:02.700 回答
0

我相信这是您所追求的粗略代码:

<script type="text/javascript">
    document.location="http://example.com/index.php?noLightBox=1";
</script>

然后在 index.php 上,您需要以下内容:

<?php 
function isset_or(&$check, $alternate = NULL) 
{ 
    return (isset($check)) ? (empty($check) ? $alternate : $check) : $alternate; 
} 

function getGETPOST($var) 
{ 
       return isset_or($_GET[$var],isset_or($_POST[$var],"Empty")); 
} 
?>

例子:

if(getGETPOST('noLightBox') != 1) {
// Code to display the light box comes here.
}
// Else normal page code

希望这有帮助!来源:http ://php.net/manual/en/function.isset.php & W3School 的 PHP 教程

于 2012-04-20T03:36:19.503 回答