我可以通过在输入[type =“file”]的表单中单击一下来触发双击吗?
我有一个表格input
用于提交文件,我对它进行了设计,因为我不喜欢本地风格。现在,我有一个单击按钮,单击它时会打开对话框以选择文件。它只需点击一下Firefox和Chrome即可正常工作,但在IE中无法使用。 按钮需要双击打开IE中的对话框。我可以通过在输入[type =“file”]的表单中单击一下来触发双击吗?
我试图触发双击与使用jQuery一个单一的点击:
$("input").click(function() {
$(this).dblclick();
});
然而,它似乎并没有工作。有没有其他方法触发双击IE浏览器?
答案不是触发一个dblclick,而是使IE打开文件对话框......对吗?所以我觉得soluce将触发对文件输入点击
$("#formId").find("input[type='file']").trigger('click');
在你的小提琴,我这样做(至极将被隐藏):
$("input").click(function() {
$('input[type="file"]').click();
});
我试试这个
$('input[type="file"]').hide().parent().append($('<span />').attr('class', 'filebutton').text('Upload'));
$(".filebutton").click(function() {
$('input[type="file"]').click();
});
有了这个CSS
form {
color:#666;
}
.filebutton {
content:'upload';
font:small-caps 15px Georgia;
letter-spacing:1px;
border-radius:10px;
border:1px solid #eee;
width:100px;
padding:10px;
margin:20px;
text-align:center;
position:absolute;
left:0;
top:0;
z-index:1;
background-color:#f8f8f8;
}
.filebutton:hover {
background-color:#f3f3f3!important;
color:#c00;
cursor : pointer;
}
的d它的工作是...
$("input").click(function() {
$(this).trigger('dbclick');
});
它仍然不会在IE中触发双击 – otinanai 2013-03-11 16:45:23
什么是这样的:
var count=0;
$("input").click(function(e) {
count++;
if(count==2){
count=0;
}else{
e.preventDefault();
}
});
我没有检查这一点,但我想象你需要使用这样的事情:
$('input').on('click', function() {
$(this).trigger('dblclick');
});
我希望那不是愚蠢的,哈哈。
我试过了触发双击的各种变化,但仍然无法在IE中使用。 – otinanai 2013-03-11 16:48:25
文件输入是IE中的本机/ ActiveX组件,因此不能在它们上执行事件 - 对于选择输入也是如此。
你真的需要双击吗?
这是你的CSS ...如果你在IE中禁用不透明和剪辑的东西,你会看到实际的浏览按钮已经结束了。
确保在IE9中不使用过滤器:不透明度,那个为我工作。 JSFiddle在IE7/8中不起作用,所以我无法测试它们。
我发现jQuery文件上传演示页实际重新定位文件输入字段(“隐藏”),以便浏览按钮很好地位于“添加文件”按钮的区域内。所以当你用IE 8/9/10点击那个按钮时,只需点击一下就可以打开。
http://blueimp.github.io/jQuery-File-Upload/
在一个CSS我看到:
.fileinput-button input {
...
right: 0px;
...
transform: translate(300px, 0) scale(4);
}
我知道我大概迟到了,但只是在这篇文章以防别人跌倒,我能解决类似的问题与此:
$("#uploadInput").bind('mousedown', function (event) {
$(this).trigger('click')
});
曾参与开发IE10 & IE11。
您试图支持哪种版本的IE? – tymeJV 2013-03-11 16:50:09
主要问题是:为什么需要在IE中双击?这可能是固定的。文件输入通常由两部分组成:看起来像文本输入和按钮。在IE和IE中,前者是由双击触发的,后者是通过单击。 – 2013-03-11 16:50:23
@tymeJV至少IE9 – otinanai 2013-03-11 16:51:38