使用Webuploader过程中遇到的坑--ios端,选择文件后无反应

admin 发布于 2020-03-18T12:38:57 评论(0) 阅读(50)

分类:

标签:前端,Webuploader

在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都可以正常上传了