回答編集履歴

4

エビデンス

2017/07/05 04:51

投稿

mattn
mattn

スコア5030

test CHANGED
@@ -43,3 +43,15 @@
43
43
  ```
44
44
 
45
45
  テテーン♪と表示されないのはダウンロードしているコンテンツが小さいのかと思います。
46
+
47
+
48
+
49
+ 追記
50
+
51
+
52
+
53
+ 大きいファイルで試した結果を置いておきます。
54
+
55
+
56
+
57
+ ![イメージ説明](9b3a13803dd33b4df21405561acaeabf.gif)

3

fix

2017/07/05 04:51

投稿

mattn
mattn

スコア5030

test CHANGED
@@ -14,7 +14,7 @@
14
14
 
15
15
  xhr.onprogress = function (evt) {
16
16
 
17
- var load = (100*evt.loaded/evt.total|0);
17
+ var load = (100*evt.loaded/evt.total|0);
18
18
 
19
19
  $('#percent').html(load + '%');
20
20
 

2

onreadystatechange に変更

2017/07/05 02:31

投稿

mattn
mattn

スコア5030

test CHANGED
@@ -1,4 +1,4 @@
1
- onload を追加すれば完了のイベントは取れます。
1
+ onreadystatechange を追加すれば完了のイベントは取れます。
2
2
 
3
3
 
4
4
 
@@ -22,7 +22,7 @@
22
22
 
23
23
  };
24
24
 
25
- xhr.onload = function (evt) {
25
+ xhr.onreadystatechange = function (evt) {
26
26
 
27
27
  if (xhr.readyState === 4) {
28
28
 

1

修正

2017/07/05 02:31

投稿

mattn
mattn

スコア5030

test CHANGED
@@ -24,7 +24,15 @@
24
24
 
25
25
  xhr.onload = function (evt) {
26
26
 
27
+ if (xhr.readyState === 4) {
28
+
29
+ if (xhr.status === 200) {
30
+
27
- alert('ダウンロード完了');
31
+ alert('ダウンロード完了');
32
+
33
+ }
34
+
35
+ }
28
36
 
29
37
  }
30
38