1

我有这个滑块,当你点击它时会打开/关闭,但我也让它在页面加载时打开,但现在问题是它在每个页面上打开(因为它在每个页面上)。

是否有可能以某种方式使其每次会话仅自动启动一次?

4

2 回答 2

0

例如,如果您的意思是一个 php 会话:

$html = $someHtml;
if (!isset($_SESSION['firstTime'])) {
    $html .= "<script>myJavaScriptFunction();</script>";
    $_SESSION['firstTime'] = "Nope";
}
echo $html;
于 2012-12-02T22:02:18.993 回答
0

您可以使用 cookie。

function setCookie(c_name,value,exdays){
    var exdate=new Date();
    exdate.setDate(exdate.getDate() + exdays);
    var c_value=escape(value) + ((exdays==null) ? "" : "; expires="+exdate.toUTCString());
    document.cookie=c_name + "=" + c_value;
}

function getCookie(c_name){
    var i,x,y,ARRcookies=document.cookie.split(";");
    for (i=0;i<ARRcookies.length;i++){
      x=ARRcookies[i].substr(0,ARRcookies[i].indexOf("="));
      y=ARRcookies[i].substr(ARRcookies[i].indexOf("=")+1);
      x=x.replace(/^\s+|\s+$/g,"");
      if (x==c_name){
        return unescape(y);
      }
    }
}

if(!getCookie("sliderOpen")){
 //Open your slider
 setCookie("sliderOpen", 1, 1/*time until cookie expires*/ );
}


setCookie()getCookie()功能来源:http ://www.w3schools.com/js/js_cookies.asp

于 2012-12-02T22:09:16.363 回答