Javascript 如何显示FileReader加载进度或加载图标?

Javascript 如何显示FileReader加载进度或加载图标?,javascript,dojo,Javascript,Dojo,我有一个文件上传控件,可以读取TXT文件并加载带有文件内容的editBox。对于文件上载控件的onChange事件,代码blow可以正常工作。但我想在加载大数据时显示加载gif图标或沙漏图标。例如,如果我尝试加载3Mb文件,其中包含130K行,则需要几秒钟的时间才能显示在inputUsers编辑框中,然后仍然加载数据。而这次用户可以单击其他控件或关闭页面。那么,当我调用reader.readAsText(文件);?时,如何显示加载图标呢 注意:当您将非常大的文本复制/粘贴到多行编辑框中时,也会发

我有一个文件上传控件,可以读取TXT文件并加载带有文件内容的editBox。对于文件上载控件的onChange事件,代码blow可以正常工作。但我想在加载大数据时显示加载gif图标或沙漏图标。例如,如果我尝试加载3Mb文件,其中包含130K行,则需要几秒钟的时间才能显示在inputUsers编辑框中,然后仍然加载数据。而这次用户可以单击其他控件或关闭页面。那么,当我调用reader.readAsText(文件);?时,如何显示加载图标呢


注意:当您将非常大的文本复制/粘贴到多行编辑框中时,也会发生同样的情况。在加载列表时,我需要显示一些内容。请尝试一下此代码

reader.onloadstart = function(event) {
    ShowLoadingBar();
};
reader.onprogress = function(event) {
    if (event.lengthComputable) {
        if (LoadingBarVisible)
            ShowLoadingBar();
        AddProgress();
    }
};
reader.onloadend = function(event) {
    LoadingBarComplete();
};

谢谢你,艾伦先生。。它工作得很好。。而不是reader.onprogress=函数(事件){ShowLoadingBar();};我输入:reader.onloadstart=函数(事件){ShowLoadingBar();};哎呀,那是个打字错误——不客气D
reader.onloadstart = function(event) {
    ShowLoadingBar();
};
reader.onprogress = function(event) {
    if (event.lengthComputable) {
        if (LoadingBarVisible)
            ShowLoadingBar();
        AddProgress();
    }
};
reader.onloadend = function(event) {
    LoadingBarComplete();
};