javascript - 强制 firefox 在 img.src 更改后重新加载图像

标签 javascript html firefox canvas

我正在修改 Canvas 上的一些图像,然后将这些图像的 src 设置为新的 base64 编码图片。

img.src = changeColor(img);

changeColor 返回 base64 编码图像:

return canvas.toDataURL();

Chrome 和 Opera 都是在 src 改变后刷新图像,但是 firefox 没有! 我还通过 FireBug 检查了图像元素,它显示了新的 src 和新的图像!

我已经尝试将数据添加到 URL,但是呃......这是一个 base64 编码的图像,而不是一个 url,所以它完全破坏了我的图片。

我有什么方法可以通过 javascript 强制重新加载图像或禁用 firefox 缓存吗?

更新: 我也试过设置 image.src='';在 changeColor 函数中。 它在 chrome 中有效,但在 firefox 中...图片消失,并且在我设置新的 base64 值时不再出现。

最佳答案

如@dmmd 所述,它对我有用。您只需要添加具有随机值的查询字符串。

id.src = "path?t=t"+ Math.random(5);

关于javascript - 强制 firefox 在 img.src 更改后重新加载图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11809985/

相关文章:

javascript - 使用命名路由器 socket 时 Angular 7 路由失败

java - Selenium 代码不适用于 Internet Explorer

html - Firefox 开发者忽略字体粗细

jQuery 平滑 Div 滚动

html - float 创建重叠的 Div

javascript - 选择时如何更改菜单颜色?

AngularJS 的错误?

javascript - 如何在 JavaScript 中将传递给函数的变量设置为 null

javascript - 与有效日期输入的每个阶段匹配的日期的正则表达式

javascript - ElasticSearch 的加权平均值