Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/delphi/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript XHR2 addEventListener vs属性_Javascript_Html - Fatal编程技术网

Javascript XHR2 addEventListener vs属性

Javascript XHR2 addEventListener vs属性,javascript,html,Javascript,Html,有人能解释一下上面的#1和#2之间的区别吗。哪一个比另一个好?因为两者似乎都有效 我问这个问题的原因是因为我在玩HTML5 filereader+XHR2上传,在MDN示例中,filereader()使用\2,而XMLHttpRequest()使用\1,声明onprogress属性将覆盖以前绑定到它的处理程序,这一点很明显,在您的案例中这不是问题所在,因为您只将它绑定到新的对象实例 我认为唯一的区别是IE兼容性addEventListener,而IE5.5+支持onprogress属性(以及其他

有人能解释一下上面的
#1
#2
之间的区别吗。哪一个比另一个好?因为两者似乎都有效


我问这个问题的原因是因为我在玩HTML5 filereader+XHR2上传,在MDN示例中,
filereader()
使用
\2
,而
XMLHttpRequest()
使用
\1
,声明
onprogress
属性将覆盖以前绑定到它的处理程序,这一点很明显,在您的案例中这不是问题所在,因为您只将它绑定到新的对象实例

我认为唯一的区别是IE兼容性addEventListener,而IE5.5+支持
onprogress
属性(以及其他
on…
属性)

注:

早于9的IE版本使用
attachEvent
而不是
addEventListener

好吧,声明
onprogress
属性将覆盖以前绑定到它的处理程序,这是显而易见的,在您的情况下这不是问题,因为您只将它绑定到新的对象实例

我认为唯一的区别是IE兼容性addEventListener,而IE5.5+支持
onprogress
属性(以及其他
on…
属性)

注:

早于9的IE版本使用了
attachEvent
而不是
addEventListener

XHR2和FileReader的可能副本,但仅IE10支持。我应该详细说明一下,因为我好奇的是,如果我选择#1,是否有任何性能差异以及是否有任何理由解除事件侦听器的绑定。有什么消息吗?@Johan,我不知道哪一个表现更好,也不知道在活动结束后是否值得解开它。就我个人而言,我想在表现上没有什么不同。我不能再帮你了,不过我能做的就是(强烈地)向你推荐标记为可能重复的答案。从未见过如此高度发展的答案。我希望它能对您有所帮助。无论如何,只有IE10才支持XHR2和FileReader。我应该详细说明一下,因为我好奇的是,如果我选择#1,是否有任何性能差异以及是否有任何理由解除事件侦听器的绑定。有什么消息吗?@Johan,我不知道哪一个表现更好,也不知道在活动结束后是否值得解开它。就我个人而言,我想在表现上没有什么不同。我不能再帮你了,不过我能做的就是(强烈地)向你推荐标记为可能重复的答案。从未见过如此高度发展的答案。我希望它能帮助你。
var _xhr2 = new XMLHttpRequest();

_xhr2.upload.addEventListener('progress', function(e){ //#1
   console.log('progress');       
}, false);

_xhr2.upload.onprogress = function(e){ //#2
    console.log('progress'); 
};

_xhr2.open('POST', '/fileupload');
_xhr2.send(formData);