Javascript 随机图像仅应用一次
我希望我的网站显示一个随机的背景图像(我用javascript设置的),但我不希望当用户在网站上时它再次改变。现在,每次你点击一个链接它都会改变,但我宁愿它只在你点击主页按钮时改变 我认为另一个问题类似,但由于我以前很少使用php,我想知道是否有javascript替代方案?(或者只是我在这里遗漏了一些愚蠢的东西?)Javascript 随机图像仅应用一次,javascript,Javascript,我希望我的网站显示一个随机的背景图像(我用javascript设置的),但我不希望当用户在网站上时它再次改变。现在,每次你点击一个链接它都会改变,但我宁愿它只在你点击主页按钮时改变 我认为另一个问题类似,但由于我以前很少使用php,我想知道是否有javascript替代方案?(或者只是我在这里遗漏了一些愚蠢的东西?) 谢谢使用JavaScript为主页按钮设置onClickListener,单击时会更改背景。使用JavaScript为主页按钮设置onClickListener,单击时会更改背景
谢谢使用JavaScript为主页按钮设置onClickListener,单击时会更改背景。使用JavaScript为主页按钮设置onClickListener,单击时会更改背景。您可以使用或甚至
window.localStorage
通过导航(然后使用与链接中相同的逻辑)。您可以使用甚至window.localStorage
通过导航将信息存储在Javascript中(然后使用与链接中相同的逻辑)。Javascript解决方案(完全客户端):
使用会话存储
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放入会话的浏览器存储中,并在需要时使用它
PHP解决方案(完全服务器端): 并且,无论
标记在哪里,都要执行以下操作:
<body background="<?echo$_SESSION ['fileurl']; ?>">
Javascript解决方案(完全客户端):
使用会话存储
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放入会话的浏览器存储中,并在需要时使用它
PHP解决方案(完全服务器端): 并且,无论
标记在哪里,都要执行以下操作:
<body background="<?echo$_SESSION ['fileurl']; ?>">
使用变量。如果您喜欢使用变量,请使用php会话变量并在javascript上回显。如果您非常喜欢,请使用php会话变量并在javascript上回显。javascript解决方案工作得非常好!对于可能正在查看此帮助的其他人,我在主页链接上使用了一个onlick
,运行了一个带有delete sessionStorage.fileurl的函数代码>在其中重置会话变量,从而在您仅单击主页时更改背景。非常感谢,javascript解决方案工作得非常好!对于可能正在查看此帮助的其他人,我在主页链接上使用了一个onlick
,运行了一个带有delete sessionStorage.fileurl的函数代码>在其中重置会话变量,从而在仅单击主页时更改背景。