簡體   English   中英

使用Javascript向URL添加參數

[英]Add parameter to URL with Javascript

我有一個帶有jQuery燈箱的網頁,該網頁會在頁面加載時自動打開。 在燈箱中,我實現了Facebook Like按鈕(這是電子郵件中Facebook Like按鈕的2單擊解決方案)。 現在,當Facebook用戶通過單擊Facebook上的“喜歡的” URL訪問我的網頁時,我想關閉燈箱。 我不想創建兩個不同的頁面(一個頁面打開了燈箱,另一個頁面關閉了),我想我可以通過使用Javascript向URL添加參數然后基於該參數打開/關閉燈箱來避免這種情況。 這是一種安全的方法嗎? 我該怎么做?

您可以通過在這里找到的 JS函數獲取URL參數:

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

然后* add使用?lightbox=1例如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";

我相信這是您要遵循的粗略代碼:

<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教程

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM