我希望我的网站显示一个随机背景图片(我已使用 javascript 设置),但我不希望它在用户在网站上时再次更改。目前,每次您单击链接时它都会更改,但我希望它仅在您单击“主页”按钮时更改。
我认为this other question是相似的,但由于我以前没有使用过php,我想知道是否有javascript替代品?(或者只是我在这里错过的一些愚蠢的东西?) 只选择一次随机值
谢谢
我希望我的网站显示一个随机背景图片(我已使用 javascript 设置),但我不希望它在用户在网站上时再次更改。目前,每次您单击链接时它都会更改,但我希望它仅在您单击“主页”按钮时更改。
我认为this other question是相似的,但由于我以前没有使用过php,我想知道是否有javascript替代品?(或者只是我在这里错过的一些愚蠢的东西?) 只选择一次随机值
谢谢
您可以使用cookie甚至window.localStorage
通过导航在 Javascript 中存储信息(然后使用与链接中相同的逻辑)。
采用sessionStorage
fileurls=["a.jpg","b,jpg"]// list of file URLS
function getFileURL(){
if(sessionStorage.fileurl)
return sessionStorage.fileurl;
}else{
sessionStorage.fileurl=fileurls[Math.floor(Math.rand()*fileurls.length)]
return sessionStorage.fileurl;
}
}
现在,只需将src
图像的设置为函数设置的任何内容:
document.body.style.background="url('"+getFileURL()+"')";
基本上,这会在浏览器存储中为会话放置一个随机文件 URL,并在需要时使用它。
$fileurls = array('a.jpg','b,jpg');
if(!isset($_SESSION['fileurl'])) {
$_SESSION['fileurl'] = $fileurls[rand(0, count($fileurls) - 1)];
}
而且,无论<body>
标签在哪里,都这样做:
<body background="<?echo$_SESSION ['fileurl']; ?>">
使用 JavaScript 为 Home 按钮设置一个 onClickListener,单击该按钮将更改背景。