首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在网站上的所有页面中保持用户选择的背景。

在网站上的所有页面中保持用户选择的背景。
EN

Stack Overflow用户
提问于 2013-11-01 20:28:49
回答 3查看 182关注 0票数 1

需要帮助。我为一个页面做了一个背景选择器,所以基本上有4种不同的背景图像,用户可以从中选择。

下面是我为此使用的代码和脚本:

HTML:

代码语言:javascript
复制
<ul>
  <li id="color-1"></li>
  <li id="color-2"></li>
  <li id="color-3"></li>
  <li id="color-4"></li>
</ul>

剧本:

代码语言:javascript
复制
<script>
    $('ul li').click(function() {
    var background = $(this).css('background-image');
    $("html, body").css("background-image", background);
});
</script>

问题是当我将页面背景图像重置为默认图像时。我知道这可以通过设置cookie来解决。我尝试了几种方法,但都没有用。

有人能帮我解决这个问题吗。谢谢你占优势。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-11-01 20:35:57

选中后,将背景存储在localStorage中

代码语言:javascript
复制
<script>
    $('ul li').click(function() {
    var background = $(this).css('background-image');
    $("html, body").css("background-image", background);
    localStorage.background = background;
});
</script>

加载页面时,应用它。

代码语言:javascript
复制
$("html, body").css("background-image", localStorage.background);
票数 1
EN

Stack Overflow用户

发布于 2013-11-01 20:34:19

将后台变量保存在cookie中:

代码语言:javascript
复制
document.cookie = "bgimage=" + background;

那就拿饼干来:

代码语言:javascript
复制
$(function(){
   var bgCookie = getCookie("bgimage");
   $("html, body").css("background-image", bgCookie);
});

function getCookie(name) {
  var parts = document.cookie.split(name + "=");
  if (parts.length == 2) return parts.pop().split(";").shift();
}

getCookie()方法取自:Get cookie by name

票数 0
EN

Stack Overflow用户

发布于 2014-10-27 07:45:54

您可以向您的网站添加自定义背景. to插件。

https://github.com/CybrSys/custom-background.js

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19734879

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档