webuploader多图片上传php,webUploader上传图片插件一个页面多个实例多处使用

使用webuploader插件的时候在一个页面中使用一个是没有问题的但使用两个以上就会出现点击没有反应使用不了的情况

如图所示,第一个点击没有反应

d1d8f2e43e3151ceb035cdd82e6d363e.png

每个实例插件会创建file表单如下代码

上面所示代码,下面全都以 file表单   简称

插件创建后肯定会在网页中添加file表单元素,查看页面元素后发现创建第一个实例后点击选择图片这个按钮下面没有file表单,实际上插件是创建啦file表单的,如图

82b3a313ba6046c6a737cdf19e688475.png

只不过这个file表单元素在最下面,不在他应该在的地方

而第二上上传实例是正常的,如下图,我们看下正常情况下file表单这些代码应该是在哪个地方

6bc76a49e74e68e001d249df8915f671.png

如上图正常情况下是在你添加的上传按钮表单下面紧挨着就是这个file表单元素

另外正常情况下上传按钮的父元素还有个webuploader-container这个类,如下图

第二个正常的webuploader实例

cb968514ff7ca9e39f4dfc7b8f4f1030.png

第一个不正常的webuploader实例

26caf98b75869064f5496bfa72844aca.png

经过分析发现webuploader创建实例后会添加一些你设置的上传按钮的html代码,但是添加file表单元素并不是同步添加的,可能是在一个回调函数里添加的,我没有细找在哪添加的。

下面说下解决方法

每次创建webuploader的实例时加一个延时函数,或着每创建一个实例就记录下来然后再创建的时候检测下页面中的file表单是不是跟实例数量一样,file表单里都有一个webuploader-element-invisible这样的类名

如果数量一样就创建下一个setTimeout(function(){ WebUploader.create();},3000);

每次创建的时候延时3秒种

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值