• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

javascript - 避免按下返回按钮时图像闪烁

[复制链接]
菜鸟教程小白 发表于 2022-12-12 13:37:39 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

我正在开发一个带有类似 Instagram 导航的网络界面。这意味着我有一个图片网格,当我单击其中一个时,我会转到另一个页面,该页面显示我单击的图像的详细信息。然后用户可以通过点击后退按钮返回(或者如果使用 iPhone 则向右滑动)。

我遇到的问题是当用户返回网格页面时,图像被重新加载,这会导致不好的效果。 我分析了流量,发现我的 Node.JS 服务器在请求图像时正确回答 304 Not Modified。如何强制浏览器(iphone 6 的 safari)不重新加载图像?有没有办法缓存它们?

我想要实现的行为也类似于从 safari mobile 访问的 Facebook。如果您打开一张图片,然后滑动返回时间轴,则时间轴中的图像不会闪烁。

这是我的服务器发送图像的方式: This is how I send images

我的前端在 React.JS 中

感谢您的帮助



Best Answer-推荐答案


我在这里说得太过头了……但是

您的图片未缓存

您的问题是与图像一起发送的 Cache-Control header 中的 max-age。你有 Cache-Control= public, max-age=0

您的headers几乎告诉浏览器该元素的图像是新鲜的 0 秒,这会强制在每次加载时重新验证。

换句话说,图像的缓存总是在它们加载的第二个“过期”。好像你有 Cache-Control: no-cache

关于javascript - 避免按下返回按钮时图像闪烁,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45581347/

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝2

帖子830918

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap