我为您的快速理解开了个小提琴。
https://jsfiddle.net/bexoss/hdr5824a/7/
有没有办法使用JavaScript关闭文件对话框?
我尝试发送ESC
键,但对话框未关闭。
<input id="input_file" type="file" />
<div></div>
<script>
// jQuery lib included in somewhere
$(document).on('click', '#input_file', function(e){
$('div').append('File dialog is opened. <br/>')
setTimeout(function(){
var esc = $.Event("keydown", { keyCode: 27 });
$('div').append('Escape key sent.<br/>')
$("body").trigger(esc);
}, 2000)
})
</script>
答案 0 :(得分:2)
不。由于安全问题,无法使用Javascript。这适用于所有浏览器和所有版本。
如果要触发按键,则必须是操作系统上的本机按键,而不是通过DOM。
这也是为什么不同操作系统上的同一浏览器对话框不同的原因。该对话框来自操作系统,通过内部API而非浏览器提供。
这也适用于window.alert
和window.prompt