AJAX 업로드를 처리하기 위해 객체 지향 코드를 사용하려고합니다. 코드를 실행하면 파일을보고 XMLHttpRequest 객체를 만들지 만 진행 이벤트가 발생하지는 않습니다. 내 코드의 전체 소스는 여기에서 찾을 수 있습니다 : 같은 객체의 다음일반 JS Ajax 업로드 진행 이벤트가 작동하지 않습니다.
var xhr = new XMLHttpRequest();
xhr.upload.addEventListener("progress", MyObj.trackProgress, false);
xhr.open("POST", url, true);
...
, 다른 방법 :
trackProgress: function (event) {
console.log(event);
// stuff that should calculate percent
}
그러나 CONSOLE.LOG (여기
http://pastebin.com/89QawbS6은 조각이다 이벤트) 결코 발생하지 않습니다.
참고 사항 : jQuery는 훌륭하다는 것을 알고 있으며, 대신 12 개의 멋진 업로드 플러그인을 사용할 수 있습니다. 나는 수업이나 숙제를 위해 이것을하지 않고있다, 나는 그저 그 과정을 더 잘 이해하기를 원한다. 그래서 jQuery 플러그인을 대답으로 제공하는 것이 내가 원하는 것이 아닙니다. 나는 jQuery에 덜 의존하게하려고 노력하고있다.
코드를 사용하여 진행 이벤트가 발생합니다. 이 브라우저에서 어떤 브라우저를 테스트하고 있습니까? 진행 이벤트는 모든 버전에서 지원되지 않습니다. 참조 : https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest#Browser_Compatibility – peterfoldi
@peterfoldi : Firefox 25. – Brian
실제로 FF에서는 작동하지 않습니다. Chrome에서 작동합니다. – peterfoldi