小程序
小游戏
企业微信
微信支付
扫描小程序码分享
部分android手机的image标签显示不了网络图片,有没有什么办法显示出来?
6 个回答
加粗
标红
插入代码
插入链接
插入图片
上传视频
给个网络图片的地址
你好,麻烦通过点击下方“反馈信息”按钮,提供出现问题的。
你好,请提供一下出现问题的机型和微信版本,以及能复现问题的简单代码示例。
说出来你相信吗?2023年3月17号这个问题还存在。
同问,同样的机型上,图片在不同一台手机也会有的显示,有的不显示。
<image src='https://upload.carisok.com/uploads/systerm/20180130/201801301203024194.png@188w_188h.png'>
魅族6,不需要复杂的代码,直接<image src='网络地址'> 就显示不出来。
现在的做法是先下载到本地再显示。
一部分android机型在本地选择图片之后,以base64的形式显示在<img>标签里会有无法显示的问题。
主要原因在于照片的base64头部缺少元信息。我一般是这么处理的:
if(obj.fileInput){ var value = obj.fileInput.value; /** * fileInput.value的格式有如下两种: * 1. C:\fakepath\image.png (iOS) * 2. C:\fakepath\image%A5558 (部分Android) * 第 1 种的能否正常发送。 * 第 2 种由于其base64格式没有type类型,因此无法发送。需要手动在其base64中添加"data:image/jpeg:base64," */ var ext = value.substring(value.lastIndexOf('.') + 1, value.length); var type = /png|jpg|bmp|jpeg|gif/i.test(ext) ? 'suffix' : 'nosuffix'; if (type == 'nosuffix') { var reader = new FileReader(); reader.readAsDataURL(fileInput.files[0]); reader.onload = function (e) { var ret = e.target.result; var imgDataArr = ret.split(','); if (imgDataArr[0].indexOf('data:image') == -1) { if(imgDataArr.length > 1){ obj.dataURL = 'data:image/jpeg;base64,' + imgDataArr[1]; }else{ obj.dataURL = 'data:image/jpeg;base64,' + imgDataArr[0]; } } sendImgMsg(obj); } } else { sendImgMsg(obj); } return;
你可以参考下
关注后,可在微信内接收相应的重要提醒。
请使用微信扫描二维码关注 “微信开放社区” 公众号
给个网络图片的地址
你好,请提供一下出现问题的机型和微信版本,以及能复现问题的简单代码示例。
说出来你相信吗?2023年3月17号这个问题还存在。
同问,同样的机型上,图片在不同一台手机也会有的显示,有的不显示。
<image src='https://upload.carisok.com/uploads/systerm/20180130/201801301203024194.png@188w_188h.png'>
魅族6,不需要复杂的代码,直接<image src='网络地址'> 就显示不出来。
现在的做法是先下载到本地再显示。
一部分android机型在本地选择图片之后,以base64的形式显示在<img>标签里会有无法显示的问题。
主要原因在于照片的base64头部缺少元信息。我一般是这么处理的:
你可以参考下