上删除文件?例如,这在Chrome中是可能的,但在IE8中则是不可能的。Modernizr.draganddrop是一种可能,但它是正确的选择吗?我不会添加任何自定义的拖放事件处理程序。更新要验证Joe的答案,下面是一个应该停止文件删除的jQuery示例。在Chrome和Firefox中验证。$yourFileInput.on(">
我们能否检测浏览器是否支持在<input type="file" />
上删除文件?
例如,这在Chrome中是可能的,但在IE8中则是不可能的。
Modernizr.draganddrop
是一种可能,但它是正确的选择吗?我不会添加任何自定义的拖放事件处理程序。
更新
要验证Joe的答案,下面是一个应该停止文件删除的jQuery示例。在Chrome和Firefox中验证。
$yourFileInput.on('drop', function() {
return false; // if Joe's explanation was right, file will not be dropped
});
发布于 2012-10-27 13:22:19
我认为Detecting support for a given JavaScript event?的答案可能对你有帮助。调整代码来测试输入而不是Div,对"Drop“事件的测试对我来说似乎很好。
在这里复制,这样您就不必点击(并且稍微调整一下,因为您似乎只需要检测到这一特性):
function isEventSupported(eventName) {
var el = document.createElement('input');
eventName = 'on' + eventName;
var isSupported = (eventName in el);
if (!isSupported) {
el.setAttribute(eventName, 'return;');
isSupported = typeof el[eventName] == 'function';
}
el = null;
return isSupported;
}
if(isEventSupported('drop')){
//Browser supports dropping a file onto Input
} else {
//Fall back, men!
}
https://stackoverflow.com/questions/13086400
复制相似问题