我正在从我的电脑上传图像。它在Firefox中工作正常,但在Chrome中,选择文件的对话框无法打开!我在Javascript中调用输入类型的click事件。
这是我正在做的:
<input type="file" id="fileElem" accept="image/*" style="display:none" >
<div id="fileSelect" class="drop-area">Select some files</div>
下面是JavaScript:
var fileSelect = document.getElementById("fileSelect"),
fileElem = document.getElementById("fileElem");
fileElem.addEventListener("click",function(e){
var files = this.files
handleFiles(files)
},false)
fileSelect.addEventListener("click", function (e) {
fileElem.click();
e.preventDefault();
}, false);
1条答案
按热度按时间31moq8wy1#
据我所知,没有一个浏览器可以让你在没有用户干预的情况下模拟点击
<input type="file">
本身。原因是安全。浏览器要求用户在页面上的某个地方进行显式手动单击(用户发起的单击)。然而,一旦发生这种情况,就可以直接劫持单击并将其路由到文件输入。这就是你想做的请参阅我的博客文章的主题。它有一个demo应该工作:http://ericbidelman.tumblr.com/post/14636214755/making-file-inputs-a-pleasure-to-look-at