在PC和Android端是可以正常选择和上传文件和图片的,但是在ios选择图片后,在页面上无反应,任何事件都不触发。折腾了两天硬是没解决,直到在晚上凌晨的才找出原因。原因竟然是dom结构不正确引起的。
官方给的结构是
<!--dom结构部分-->
<div id="uploader-demo">
<!--用来存放item-->
<div id="fileList" class="uploader-list"></div>
<div id="filePicker">选择图片</div>
</div>
而我的是
<!--dom结构部分-->
<div id="uploader-demo">
<label><span id="filePicker">选择图片</span></label>
<!--用来存放item-->
<div id="fileList" class="uploader-list"></div>
</div>
而问题恰恰出现在这个地方
<label><span id="filePicker">选择图片</span></label>
因为#filePicker被label元素包围,导致初始化后的按钮没有触发uploader的任何事件,所以附件也就没有上传。
最后把label元素替换成div就可以了,在PC、Android、ios都可以正常上传了