2 ybdt1201 ybdt1201 于 2016.04.03 16:49 提问

哪位大神帮我解释一下这两句js代码
js

想问一下 var reader = new FileReader();和 reader.onload = function(){}是什么意思?
一般用var reader = new FileReader()的时候,new后面一般是函数方法,但是这里的FileReader();在上下文中并没有找到这个方法。

var fileInput = document.createElement('input');
        fileInput.setAttribute('type', 'file');
        fileInput.setAttribute('accept', 'image/*');
        fileInput.setAttribute('id', 'image-' + imageIndexIdNum);
        fileInput.addEventListener('change', function(event) {
            /*添加照片的对话框,选好照片后,点击打开后触发*/
            var file = fileInput.files[0];
            if (file) {
                var reader = new FileReader();
                reader.onload = function() {
                    //处理 android 4.1 兼容问题
                    var base64 = reader.result.split(',')[1];
                    var dataUrl = 'data:image/png;base64,' + base64;
                    //
                    placeholder.style.backgroundImage = 'url(' + dataUrl + ')';
                }
                reader.readAsDataURL(file);
                placeholder.classList.remove('space');
                ui.newPlaceholder();
            }
        }, false);
        ```

4个回答

showbo
showbo   Ds   Rxr 2016.04.03 19:38
已采纳
qq_26733915
qq_26733915   2016.04.03 19:51

var reader = new FileReader();这个就是实例化一个FileReader的对象,就像var str=new String();一样,具体FileReader是什么可以去查一下;
reader.onload = function(){};load事件就是指页面加载就调用这个function方法。希望有帮助吧~!

ybdt1201
ybdt1201 谢谢大神是无私解答
一年多之前 回复
caozhy
caozhy   Ds   Rxr 2016.04.03 18:56

html5异步读取文件,onload在加载的时候调用。

CSDNXIAON
CSDNXIAON   2016.04.03 17:02

请大神帮我看看这段代码
----------------------同志你好,我是CSDN问答机器人小N,奉组织之命为你提供参考答案,编程尚未成功,同志仍需努力!

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!