c# - 每次访问更改背景图像

标签 c# javascript jquery asp.net css

我的网站有大约 50 张背景图片。我想要做的是在每次访问时随机向用户展示一个不同的。我的意思是,他们在访问期间将使用相同的背景图片浏览网站。

在他们关闭浏览器并重新访问或稍后回来访问后,他们会看到一个新的随机背景图像。不需要在他们之前的背景图片上保存任何内容,只需为每次新访问该网站的随机新图片。

不确定这是否可以使用 C#、Javascript、JQuery 或 CSS 完成。

编辑:我正在为我的网络应用程序使用 ASP.net 4.0 C#。谢谢

最佳答案

不要使用评论中所述的cookies。这只会为发送到服务器的 header 消息增加额外的带宽。

相反,使用浏览器中的本地存储来保存他们使用的最后一张图像。当一个新的 session 开始时增加这个值,并显示下一个图像。

我用过 jStorage在元素上,它工作正常。

您可以将当前显示的图像保存在他们的浏览器存储中,也许还有一个 session ID。稍后,您可以检查 session ID 是否已更改。如果是这样,则更改为不同的图像。

var image = $.jStorage.get("image", 0);
var session_id = $.jStorage.get("session", "put current session id here");

if(session_id != "current session id")
{
   image = (image < 50) ? 0 : image+1;
   $.jStorage.set("image",image);
   $.jStorage.set("session","current session id");
}

// use image to set background

编辑:

不要将此 JavaScript 放在每个网页中。相反,将其放置在响应为 Javascript 内容类型的 ASP.NET 页面中,并通过页面的 header 加载它。这样,当 session 更改时,浏览器上的页面缓存不会影响脚本。

关于c# - 每次访问更改背景图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16534153/

相关文章:

c# - WPF 绑定(bind)到变量/DependencyProperty

c# - 通过Winforms应用程序和PCI合规性调用Paypal

javascript - 鼠标 "click"和 "click-drag n release"都移动 div

javascript - 自定义菜单项不可点击

c# - WPF 选项卡顺序工作错误

javascript - 未定义或空引用文件的错误 :"Unable to get property ' 内容'

javascript - javascript中的局部变量是否保留在内存中?

Javascript:奇怪的类型转换

jquery - 父div透明背景但不影响子div透明度

java - C# 中反序列化 json java 对象