addEventListener出现了无法解释的未定义方法错误

3

我一直遇到这个问题,但找不到答案。

function UploadBar() {
    this.reader = new FileReader();
    this.reader.addEventListener(
        "onloadstart"
        , function(evt) {alert("Hello World");}
        , false
    );
}

当我尝试运行这段代码时,在Chrome的JavaScript调试器中出现了undefined_method_error。请问有没有好心人能告诉我这里出了什么问题?
1个回答

4

reader不是一个元素,所以不要使用.addEventListener。而是应该按照以下方式进行操作。

function UploadBar() {
    this.reader = new FileReader();
    this.reader.onloadstart = function(e) { alert('Hello World') };  
}

注意:由于FileReader继承自EventTarget,因此可以使用addEventListener方法监听所有这些事件。来源:https://developer.mozilla.org/en-US/docs/Web/API/FileReader。但是由于某种原因,这种方法在旧版Android浏览器中不可用。 - PhilT

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接