Javascript的onLoad File api事件没有触发
Javascript onLoad File api event not firing
我有一小段代码
<input type="file" style="margin-left:10px" id="file"/>
和JavaScript代码片段
<script type="text/javascript">
function compress(evt){
console.log('coming here');
var f = evt.target.files[0];
var r = new FileReader();
r.onload = function(e) {
console.log('coming here also');
var contents = e.target.result;
alert( "Got the file.n"
+"name: " + f.name + "n"
+"type: " + f.type + "n"
+"size: " + f.size + " bytesn");
}
}
document.getElementById('file').addEventListener('change', compress, false);
</script>
在控制台中,我可以看到coming here
,但r.onload
功能不工作。谁能告诉我为什么它不起作用。我用的是最新版的chrome浏览器
你需要使用readAs*方法,如果你的文件类型是image,这样做:
var f = evt.target.files[0];
var imageType = /image.*/;
if (f.type.match(imageType)) {
var r = new FileReader();
r.onload = function(e) {
var result = r.result;
console.log(result);
}
r.readAsDataURL(f);
}
相关文章:
- 如何在多承诺链中处理谷歌地图API V3事件
- 如何通过bxSlider回调api处理事件
- 在JQuery中使用谷歌地图Api事件/侦听器
- YouTube播放器API全屏事件
- 如何在Slack API中与事件交互
- 删除Google Calander API中的事件
- 谷歌地图API-点击事件仅在边缘点击时触发
- 谷歌地图API v3调整大小事件
- 谷歌地图 api v3 搜索多边形没有鼠标事件
- 在谷歌地图 API 中,不会为 img 元素触发 Onclick 事件
- 如何将waze事件标记添加到带有流量的google地图javascript API生成的地图
- API Google Maps Javascript在上下文菜单中调用事件侦听器
- 正在更新API事件上的innerHTML
- YouTube API-动态添加事件侦听器
- 在谷歌地图API v3和MarkerWithLabel上添加多个事件侦听器
- 谷歌地图api v3 zoom_changed事件在fitBounds调用后激发了两次
- Piwik事件API-如何查询单个操作
- 我如何访问FooBox灯箱jQuery事件API
- jQuery特殊事件API
- 在其他元素中,不起作用 PhoneGap 事件 API ex) 后退按钮