您现在的位置:首页 >> 前端 >> 内容

web uploader在火狐下上传点击无效问题的解决方法

时间:2017/10/31 15:54:13 点击:

  核心提示:在公司项目中,做一个上传文件的功能,选用了百度的web uploader,按照官网上面的方法,写好之后,在chrome下面没有任何问题,可是在Firefox下面怎么点击都没有效果?官网上的例子在chr...

在公司项目中,做一个上传文件的功能,选用了百度的web uploader,按照官网上面的方法,写好之后,在chrome下面没有任何问题,可是在Firefox下面怎么点击都没有效果?

官网上的例子在chrome和Firefox上都可以触发。查看官网上的HTML布局如下:

<p id="picker" class="webuploader-container">
    <p class="webuploader-pick">选择文件</p>
    <p id="rt_rt_1btmmnbjm7q8nrgf9ul2t1kc51" style="position: absolute; top: 0px; left: 0px; width: 88px; height: 35px; overflow: hidden; bottom: auto; right: auto;">
        <input name="file" class="webuploader-element-invisible" multiple="multiple" type="file">
        <label style="opacity: 0; width: 100%; height: 100%; display: block; cursor: pointer; background: rgb(255, 255, 255) none repeat scroll 0% 0%;"></label>
    </p>
</p>

最外层的id=”picker”标签是我们绑定web uploader的标签,web uploader会自动在内部生成一段代码填充。官网的布局和我的布局的区别在于我绑定web uploader的标签是button,难道是button导致的,随后我写了个小例子测试了下:

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>button</title>
</head>
<body>
    <button>
        <p id="alert">点击弹出</p>
    </button>
    <script>
        var clickElemnt = document.getElementById("alert");
        clickElemnt.onclick = function(){
            alert("1");
        }
    </script>
</body>
</html>

在chrome下面可以弹出弹窗,正常显示,但是在Firefox下面没有任何反应,看来应该是在Firefox浏览器中button标签内部不允许其他标签把,只能是文本,之后我将绑定web uploader的标签换为p,在Firefox下面也就可以使用了。

看来这应该是Firefox对button标签做的一些限制,就好比table/thead/tbody一样。

Tags:WE EB BU UP 
作者:网络 来源:樊小书生