我可以在表单输入[type="file"]中通过单击触发双击吗?
Can I trigger a double click with a single click in a form input[type="file"]?
我有一个用于提交文件的表单input
,我对它进行了样式设计,因为我不喜欢本地样式。现在,我有了一个按钮,当点击它时,它会打开对话框来选择文件。在Firefox和Chrome上点击一下就可以了,但在IE上不行。按钮需要双击打开IE中的对话框。
我试过用jQuery触发一个双击:
$("input").click(function() {
$(this).dblclick();
});
然而,它似乎不起作用。还有其他的方法来触发IE的双击吗?
下面是演示:http://jsfiddle.net/HAaFb/这样怎么样:
var count=0;
$("input").click(function(e) {
count++;
if(count==2){
count=0;
}else{
e.preventDefault();
}
});
演示:http://jsfiddle.net/HAaFb/1/
http://jsbin.com/ukotit/17/edit我发现jQuery文件上传演示页面实际上重新定位了文件输入字段(虽然"隐藏"),以便浏览按钮可以很好地位于"添加文件"按钮的区域内。所以当你在ie8/9/10中点击这个按钮时,只需点击一下它就会打开。
http://blueimp.github.io/jQuery-File-Upload/在我看到的一个CSS中:
.fileinput-button input {
...
right: 0px;
...
transform: translate(300px, 0) scale(4);
}
答案不是触发dblclick,而是使用IE打开文件对话框…对吧?所以我认为解决办法是触发点击文件输入(这将被隐藏?)
$("#formId").find("input[type='file']").trigger('click');
在你的小提琴,我这样做:
$("input").click(function() {
$('input[type="file"]').click();
});
I try this
$('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;
}
文件输入是IE中的原生/ActiveX组件,因此不能对其执行事件-对于选择输入也是如此。
你到底需要双击做什么?
我知道我可能迟到了,但以防有人偶然发现这篇文章,我能够解决一个类似的问题:
$("#uploadInput").bind('mousedown', function (event) {
$(this).trigger('click')
});
在IE10 &IE11 .
$("input").click(function() {
$(this).trigger('dbclick');
});
我还没有检查过这个,但我想你会需要使用这样的东西:
$('input').on('click', function() {
$(this).trigger('dblclick');
});
我希望这不是愚蠢的,哈哈
这是你的CSS…如果你在IE中禁用不透明度和剪辑,你会看到实际的浏览按钮在右边。
确保在IE9中没有使用filter:opacity,这个对我来说是有效的。JSFiddle不能在IE7/8中工作,所以我无法测试这些
相关文章:
- 使用clickToggle并在单击另一个元素时关闭元素
- 单击时将焦点更改为元素
- 单击F5时如何停止页面加载
- 通过单击表单中的按钮,在代码生成中使用javascript生成字母数字代码
- 在单击任何位置时隐藏元素,而不检查每次DOM单击
- 单击jquery清除输入值
- 单击按钮以等待单击按钮
- 在单击href链接的同时下载文件
- 单击顶部导航时如何进行向下滚动效果(向下滑动).
- 如何获得类似id的"invokedOn”;使用Bootstrap ContextMenu通过右键单击事件显示文
- 当“<按钮>"单击
- "阅读更多“;当同时单击按钮和正文时
- $(文档).(“click" . .如何在单击文档的其他位置时折叠列表
- "OnClick”;通过JavaScript创建的事件会立即触发,而不是在单击对象时触发
- 如何改变“;添加到购物车”"添加到愿望列表”&"将该产品“;单击时按钮边框颜色
- 删除值=";评论"只要从输入框中单击它
- jQuery IE 9在替换"tbody"时崩溃;值,单击其中的元素后
- CSS、HTML和Javascript:;正在加载"微调器不'无法使用单击上的链接
- 完成注册表格后,我如何显示警报'你完成了.单击"确定"登录'然后当用户单击"
- "悬停”;在jQuery插件函数中不起作用,鼠标悬停并单击即可