哪些浏览器支持在input[type="file"]元素上触发click事件

Which browsers support triggering click event on input[type="file"] elements?

本文关键字:quot 元素 事件 click file input type 浏览器 支持      更新时间:2023-09-26

根据https://developer.mozilla.org/en/Using_files_from_web_applications,

从Gecko 2.0 (Firefox 4/Thunderbird 3.3/SeaMonkey 2.1)开始您可以隐藏公认的丑陋的文件元素,并显示您的打开文件选择器并显示哪个文件或用户选择的文件。

(使用jQuery):
$('a.upload').click(function(e) {
  e.preventDefault();
  $('input[type="file"]').click();
});

我不是在问还有什么方法可以做得更好。我想知道其他浏览器支持输入文件的点击事件就像这样?

firefox 3.2+版本不支持AFAIK,因为如果文件输入是隐藏的,有一些安全问题,我猜chrome和ie支持这就是为什么人们触发点击把文件输入直接放在假元素

后面

我已经运行了一个测试,该测试使用display: none隐藏了原始文件输入,并使用jQuery在触发按钮上运行click事件。

至少适用于IE7及以上版本,FF 4.0及以上版本,Safari 4.0及以上版本(Win), Chrome 14.0及以上版本。不能在:FF 3.6及更早版本中工作