将 css 背景设置为本地存储中的图像

2024-05-04

我希望将 base64 格式的图像存储在密钥中的本地存储中ImgStorage在CSS背景中像这样:

data:image/png;base64,iVBORw0KGgoAAAANS......

到目前为止,我尝试了两种方法:

1)从存储加载并放入css标签:

var TheImage = localStorage.getItem('ImgStorage');
$('body').css({ 'background-image': "url(" + TheImage) });

2)从存储数据重新创建画布:

var Canvas = document.createElement("canvas");
Canvas.width = 50;
Canvas.height = 50;
var Context = Canvas.getContext("2d");

var TheImage = localStorage.getItem('ImgStorage');

Context.drawImage(TheImage, 0, 0);
Canvas.toDataURL("image/png");

$('body').css({ 'background-image': "url(" + Canvas.toDataURL("image/png") + ")" });

我在网上环顾四周,但所有示例都讨论了在存储中获取图像以在内部渲染<img> tag.

有人解决了css背景的这个问题吗?

顺便说一句,就性能而言,如果您对图像进行 Base64 编码,则可以将它们发送到 HTML 页面的正文中,而无需任何其他请求。例如,如果您需要为 UI 加载 20 个图像,则请求数会减少 20 个。而且,如果您将每个图像存储在本地存储中,则只需加载它们一次。不适用于较旧的浏览器,因此它仅适用于 80% 的浏览器,但仍然...需要考虑,因为就浏览器的发展而言,时间站在您这一边。


好的,这是为那些跳来跳去后来到此页面的人准备的:我可以使用了!!!!

使用选项 1),您只需编写以下内容:

var TheImage = localStorage.getItem('ImgStorage');
$('body').css({ 'background-image': "url(" + TheImage + ")" });

换句话说,您不需要像我尝试使用选项 2)那样浪费时间重新创建画布,只需直接进行即可。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将 css 背景设置为本地存储中的图像 的相关文章

随机推荐

  • D3:使用 d3-tile 缩放到边界框

    我已成功将 D3 矢量 地图分层到从 Mapbox 提取图块的 d3 tile 光栅 地图之上 手动缩放效果非常好 矢量和光栅都是同步的 我现在正在尝试实施迈克 博斯托克 缩放到边界框 https bl ocks org mbostock
  • 复杂C语法的含义[重复]

    这个问题在这里已经有答案了 可能的重复 这个C语句是什么意思 https stackoverflow com questions 8249483 what does this c statement mean 这个表达是什么意思 char
  • 使用 Python 解压缩数据包的 gzip 有效负载

    我目前正在开发一个程序 该程序采用 pcap 文件并使用 scapy 包按 ip 分离出所有数据包 我想解压缩使用 gzip 包压缩的有效负载 我可以判断有效负载是否经过 gzip 压缩 因为它包含 Content Encoding gzi
  • JavaScript 中的对象解构[重复]

    这个问题在这里已经有答案了 gt a a true Statement lt a true 上面的语句是赋值true to a 为什么上面的语句在chrome控制台中没有报错 虽然下面的语句给出了错误 gt a a true Stateme
  • 使用Vue组件渲染函数时无限循环

    我正在使用 Vue 组件来渲染一些表头 如下所示 render createElement return createElement div class header Array apply null length this initHou
  • 为什么 C++11 有 `make_shared` 而没有 `make_unique` [重复]

    这个问题在这里已经有答案了 可能的重复 make unique 完美转发 https stackoverflow com questions 7038357 make unique and perfect forwarding 为什么C 1
  • 在“读取初始通信数据包”时失去与 MySQL 服务器的连接,系统错误:61

    3天了 已经碰壁了 我正在运行 mac os x 我已经安装了mysql 5 5 14 osx10 6 x86 64 dmg 就上下文而言 我需要安装 mysql gem 以便与 ruby on Rails 一起使用 除非有一个有效的 my
  • 尝试后台获取期间出现 AFNetworking 错误 53

    在更新我的应用程序以支持后台应用程序刷新时 我遇到了 AFNetworking 问题 我正进入 状态NSPOSIXErrorDomain Code 53 Software caused connection abort 该问题似乎出现在 i
  • 如何将Python + Flask变量输入到html标签属性中

    顺便说一句 新手 我正在使用 Python Flask 我有一个 Python 变量 我想将其替换为value 我的尝试 value variable 没用
  • 使用base-href和deploy-url构建Angular CLI来访问CDN上的资产

    的背景 我正在使用 Angular CLI 构建一个项目 包含多个应用程序 我想在我的域上的单独子路径上发布应用程序 例如example com apps app1 如果我设置 base href参数为 apps app1 它解决了有关路由
  • Primefaces:对话框隐藏时文本字段不会更新

    我正在尝试从对话框更新文本字段 文本字段位于父组件中 但它没有发生 如果我在命令按钮的更新中给出文本字段的ID 我遇到了错误 javax faces FacesException 找不到从 tabView lkpSltRec 引用的标识符
  • 更改列表视图中的确切滚动位置

    一直在网上寻找答案 但我还没有找到任何可以做到这一点的东西 我想以编程方式更改 WPF 列表视图中的确切位置 某种说法 ListView Scrollposition Y some value 我唯一能找到的就是将值更改为列表视图中的对象
  • ANTLR语法的迁移工具

    假设我有以下简单语法 查询 DSL grammar TestGrammar term textTerm textTerm Text T VALUE STRING T VALUE value STRING WS t r n gt skip 然
  • 如何在交叉表 Crystal Report 中添加 2 个汇总字段

    我使用水晶报告中的交叉表创建报告 我有如下图所示的列 我想要 2 个汇总列 数量和销售额 并在交叉表专家中添加 2 个汇总字段 但还是不行 如果我想将 4 的值分配给 3 交叉表专家 自定义样式 汇总字段 选择水平 选中显示标签 至少在我的
  • Linux 上的 Imagemagick 将 EMF 转换为 PNG

    我尝试在 Red Hat Enterprise Linux Server 5 5 Tikanga 上使用 Imagemagick 将 EMF 格式的图像转换为 PNG 但遇到以下错误 转换 此图像格式 thumbnail emf 没有解码委
  • 如何在heroku上设置django-compressor,离线压缩到S3

    我遵循了在 SO 和不同博客中找到的每一条 QA 建议 在我的开发机器上一切正常 但在 Heroku 上没有任何效果 这是我的设置 DEFAULT FILE STORAGE arena utils MediaRootS3BotoStorag
  • 在“id”类型的对象上找不到属性“”

    我越来越Property aVariable not found on object of type id当尝试读取或写入变量到数组时 难道不应该知道我添加的对象是什么类吗 还注意到它可以读取值NSLog anArray objectAtI
  • Azure WebApp - 获取 VNET 上连接的服务的私有 IP

    我在 VPN 内有一个 Azure WebApp 当我继续联网时 我看到这样的连接 当我单击 单击此处进行配置 时 它似乎已启动并正在运行 所以 一切看起来都很好 VPN 外部连接 但我在哪里可以找到此 Web 应用程序的内部 VPN IP
  • 为什么 getcwd() 在 __destruct() 中返回 / ?

    我刚刚注意到 如果在 destruct 魔术函数中调用 getcwd 返回 而在任何其他方法中它返回预期路径 你对此有解释吗 这是一种 SAPI 行为 脚本关闭期间调用的析构函数已发送 HTTP 标头 脚本关闭阶段的工作目录可能与某些 SA
  • 将 css 背景设置为本地存储中的图像

    我希望将 base64 格式的图像存储在密钥中的本地存储中ImgStorage在CSS背景中像这样 data image png base64 iVBORw0KGgoAAAANS 到目前为止 我尝试了两种方法 1 从存储加载并放入css标签