找回密码
 立即注册
即日起,论坛关闭新用户注册和登录,论坛相关的贴子保留查阅和下载。获得授权后,有技术问题可联系微信 13199509559 一对一解决。 2024-3-12
查看: 5224|回复: 0
打印 上一主题 下一主题

微信h5 file不触发onchange 整理了几种解决办法

222

主题

222

主题

222

主题

管理员

Rank: 9Rank: 9Rank: 9

积分
0
跳转到指定楼层
1#
admin 发表于 2019-9-23 00:48:53 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

一、微信版本过低,升级微信
二、微信分身无法触发onchange  (这个很重要,之前我就是因为用分身的微信 怎么也不管用。也没有解决办法。)

三、网上找到的方法
这是安卓微信的一个遗留问题。
解决办法很简单:
将input标签
<input type=“file" name="image" accept="image/gif, image/jpeg, image/png”>
写成
<input type="file" name="image" accept=“image/*”>
即可解决。


四、网上找到的方法2
做微信公众号开发,需要用到jssdk,在把各种配置完成之后,在多个页面用到图片上传的接口。

然而一样的配置,一样的代码,一共三个页面,只有两个页面能够成功调用手机的相册,另外一个死活都不出来。

后来各种屏蔽代码。结果发现在这个页面中我的

$("#changeImage").on('click',function(){

    alert(1);

})

根本就不生效。#changeImage获取的是一个div。别的页面也是div呀。

之后从网上查各种微信内置浏览器不支持onclick的解决方案,还用到什么touchend,还有什么延迟300ms,感觉很复杂。

昨天这个事情折磨了我很久。

今天早上再从网上查。发现了一句话:


这个解决方案在一个很不明显的地方。是一个评论里。然而死马当活马医,试了一下,把我的div改成a标签,加上href="",然后再用onclick结果就解决了!

注意:href=""  href="#" 都会自动刷新页面。要想不刷新 ,需要写成:href="javascript:"



由于问题比较简单代码我就不贴了。留作记录方便以后查询。

对于下面这句话:


路过的大神有懂的可以帮我解释一下吗?这里的原理并不是太懂。或者推荐一些相关的资料给我也好,让我明白明白。。。多谢!!!
一共4种方法,我就是在方法2中 研究了一晚上。 最终才解决。

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表