单击FireFox3中<input type="file" />
的文本框部分时,将打开文件浏览窗口。
在IE7中不会发生这种情况。您必须单击“浏览”按钮才能打开文件浏览窗口。
当用户点击文本框区域时,如何防止文件浏览窗口在FireFox中打开?我喜欢它,所以它只在按下按钮时打开。
答案 0 :(得分:16)
为什么不能单独留下预期的行为?大多数使用FireFox的人都希望它能够实现。除非有一个实际的“设计”原因,你没有声明要做到这一点,请不要尝试改变它。
答案 1 :(得分:6)
Firefox以这种方式运行,以防止使用文件输入进行攻击。
请参阅this blog entry的结尾和以下一些评论。
我同意它非常烦人,不是作为网站设计师/开发者而是作为Firefox的用户;有时我只想粘贴一个文件名,而不必点击对话框。
答案 2 :(得分:2)
即使你真的想这样做,我也不认为这是可能的。
答案 3 :(得分:2)
当用户点击文本框区域时,如何阻止文件浏览窗口在FireFox中打开?
用另一个元素掩盖它。
<div style="position: relative">
<input type="file" />
<div style="position: absolute; top: 0; left: 0; width: 11em; height: 2em;"> </div>
</div>
但不要这样做。它非常脆弱,在许多情况下会破裂。
我喜欢它,所以它只在按下按钮时打开。
我怀疑你的用户会喜欢它。它从浏览器中删除了预期的功能,并没有更好地替换它。或者甚至任何事情。
答案 4 :(得分:0)
是的,并且网页没有任何关于它的信息。
我不知道可以控制它的FF配置设置,所以你坚持使用#3:
使用扩展名可能可以更改此行为,但是您必须让用户安装您的扩展程序(对于内部应用程序可能是可行的)并应对错误它可能会引入应用程序。
答案 5 :(得分:0)
一个简单的解决方法是创建一个文本输入字段和一个按钮,该按钮用于触发文件浏览器,然后将信息填充回文本字段?我对这一切都很新,并且正在阅读有关此问题的许多问题,包括FF3不会像以前的版本那样对input = file应用相同的css样式。