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