JavaScript   发布时间:2022-04-16  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了javascript – IE8无法读取数据URL图像大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个二维条码生成器在( Java)后端制作一些条形码.它为我提供了数据URL,我使用 Javascript在客户端设置它们.一切都适用于Chrome,Firefox.但不是在IE8中(当然!)然有一半的图像有效但有一半无效.

我的图像是几百字节(远低于32kb)

这是一个不在IE8中工作的示例:

数据:图像/ PNG; BASE64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAAAAADFHGIkAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAEnRFWHRTb2Z0d2FyZQBCYXJjb2RlNEryjnYuAAAAgklEQVR42nVRixKAMAjy / 3 a2hBwdVtdD1RELFxOXS6 9v1 F / ICFs5jpGqsQWSosy3MQbVGSEDC7q4FaQrRiJDepJ1iG2sATggaqkeCc3VqicDDu6omgk1VdmS4W3Uq4sr4hE8llSYKe7GXsTxTPdZTdlyLQA4xrKQOit Ryv7nwfFATbY5mERHQAAAABJRU5ErkJg

这是一个在IE8中工作的示例:

数据:图像/ PNG; BASE64,iVBORw0KGgoAAAANSUhEUgAAAFMAAABTCAAAAADG2WTcAAAACXBIWXMAACZzAAAmcwHzbHUKAAAAEnRFWHRTb2Z0d2FyZQBCYXJjb2RlNEryjnYuAAABAklEQVR42u2ZwQ7AIAhD˚Ff3nbwMGwBl3hYg1xM5ngmUBE3u / abCTHtMTZcS4N3O0z3dNiYg eeickZ02LMVzRcPJ0DD77zPsw5CQv6BGaYIwkmxo6 / V7S2CKHGShvYaNDmngN T0TfGk9Y / E0DL4YkxVsWCQsSGGOOjPhHaNVfM5W2ympMCFu2A3QQyHb722ZkQAT dLzVjeJvqz4hYqc1H2Y4XHgU0WPCmzFxJhMjrTO00K3uDd7MXm8SSdKc1fej / 7LLGTK 8yvPW0jZrGZ15sQXWbUGCTXOXIoiDGLLx3RUN1lOjOzCp5MkzZUmlkIM9JnGs9ezF2mxuz8r2e33b2PHKlEJ4PKAAAAAElFTkSuQmCC

这是一个fiddle. JS小提琴在IE8中不能很好用,所以使用this link直接查看结果.

如果你对这个问题的原因有所了解请分享:)

解决方法

由于某种原因,失败的base64解码.png无效.如果您下载图像并重新保存,则文件大小会有所不同.

对于重新保存的副本,我看到原始经文409的237个字节.

这可以使用pngcheck工具确认.

Z:\pngcheck-2.3.0>pngcheck.exe original.png
original.png  EOF while reading CRC value
ERROR: original.png

Z:\pngcheck-2.3.0>pngcheck.exe re-saved.png
OK: re-saved.png (24x24,32-bit RGB+alpha,non-interlaced,82.2%).

使用以下有效的re-saved.png base64编码数据修复了IE8中的问题.

BACkground:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAABJ0RVh0U29mdHdhcmUAQmFyY29kZTRK8o52LgAAAPlJREFUSEu1VdESwyAM6v7/o7vpqYcEova6vnRmNSRA9HP/nuufTwMorwL06rvm5MQI0n9X1FZAialCOD6+wY09kYqdgE15dpJx9QjGHYfukCJFBbbOHela/Wc1QDDFv6OW4xPAqZCuCKkBU6XcEqprjurfSoe5TRlFmVVDoRkAWzOztLP40IDtpShjlznX2TlALhFATbeb5kcuYhGzM4vnJsxBRoPiWek0dc9UZMcAT26oFmw7ClVcq7F3+rCdrQacwFGVHRvsvLpebXD+lsngwrL3wVI0uHB2DBE6UMezGkI11dtn0Yo2dcko90kN1FA9jQ0A9veb6y86oobBWhxQUgAAAABJRU5ErkJggg==);

我认为Chrome和Firefox对CRC更加宽容.

大佬总结

以上是大佬教程为你收集整理的javascript – IE8无法读取数据URL图像全部内容,希望文章能够帮你解决javascript – IE8无法读取数据URL图像所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。