ページの読み込み時に自動的に開くjQueryライトボックスを備えたWebページがあります。ライトボックスに、Facebookの「いいね」ボタンを実装しました(これは、電子メールのFacebookの「いいね」ボタンの2クリックソリューションです)。さて、FacebookユーザーがFacebookの「いいね」URLをクリックして私のWebページにアクセスしたとき、ライトボックスをオフにします。2つの異なるページ(1つはライトボックスがオンでもう1つはオフ)を作成する必要はありません。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;
}
?lightbox=1
次に *use egを追加www.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 & PHP に関する W3School のチュートリアル
于 2012-04-20T03:36:19.503 に答える