简单 Ajax 上传器插件停止工作

Simple Ajax Uploader Plugin Stopped Working

我们正在使用 javascript 插件 Simple-ajax-uploader 在您的网站上上传文件,它今天 (09/05/2019) 突然停止工作。 上传div/button 不能再点击了。

这发生在我们的网站上,甚至在 official plugin site 上。 这只发生在 Chrome 上,并且只发生在 Chrome 今天关闭并重新启动的计算机上。

我们发现 this article 表明 Chrome 开发工具今天刚刚更新,但我们的 Chrome 版本自重启 (76.0.3809.132) 后没有改变。然而,重启肯定触发了错误,所以那里发生了一些事情。但是什么?

我刚刚查看了 Chrome,您说的按钮不起作用是对的。这是 Stacking Context 的问题,不幸的是每个浏览器都有自己的实现。

基本上,外部 div 会阻止点击事件到达内部 input

我的建议是使用自定义按钮或重新设计当前按钮的样式(我发现如果您从外部 div 中删除 position 属性 它将再次工作。考虑到许多属性会导致堆叠上下文问题:位置、变换、不透明度、z-index。尝试 adding/removing/modifying 其中一些,在外部 div 和内部 input ).

反正保证是风格问题,不是JavaScript问题

今天早上在这里发现同样的问题。

快速 jQuery 修复...

$('input[type=file]').css('position','relative');

更新:问题已在插件的 2.6.5 版中修复。请忽略以下内容。

这里是插件维护者。短期修复是删除或注释掉 line 2002:

'position' : 'absolute',

或者:该问题在 Firefox 中似乎不存在。无论如何,我会尽快推出修复程序。