我有这个滑块,当你点击它时会打开/关闭,但我也让它在页面加载时打开,但现在问题是它在每个页面上打开(因为它在每个页面上)。
是否有可能以某种方式使其每次会话仅自动启动一次?
例如,如果您的意思是一个 php 会话:
$html = $someHtml;
if (!isset($_SESSION['firstTime'])) {
$html .= "<script>myJavaScriptFunction();</script>";
$_SESSION['firstTime'] = "Nope";
}
echo $html;
您可以使用 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