@@ -27,7 +27,9 @@ import (
27
27
)
28
28
29
29
var tmpText = `
30
+ <!DOCTYPE html>
30
31
<html>
32
+ <head>
31
33
<style>
32
34
a {
33
35
color: #369;
45
47
#fileElem {
46
48
display: none;
47
49
}
50
+ #progress {
51
+ width: 100%;
52
+ }
48
53
</style>
54
+ </head>
55
+ <body>
56
+ <progress id="progress" value="0" max="100"></progress>
49
57
<div id="drop-area">
50
58
<pre>
51
59
{{range $href, $name := . }}
54
62
</pre>
55
63
<input type="file" id="fileElem" multiple accept="image/*" onchange="handleFiles(this.files)">
56
64
</div>
57
-
58
65
<script>
59
66
// ************************ Drag and drop ***************** //
60
67
let dropArea = document.getElementById("drop-area")
@@ -102,12 +109,23 @@ function handleFiles(files) {
102
109
}
103
110
104
111
function uploadFile(file, i) {
112
+ let size = file.size
105
113
console.info('upload file',window.location.href)
106
114
var url = window.location.href
107
115
var xhr = new XMLHttpRequest()
108
116
var formData = new FormData()
109
117
xhr.open('POST', url, true)
110
118
xhr.setRequestHeader('X-Requested-With', 'XMLHttpRequest')
119
+ let p = document.getElementById('progress')
120
+ xhr.upload.onprogress = function(ev) {
121
+ if(ev.lengthComputable) {
122
+ p.max = ev.total
123
+ p.value = ev.loaded
124
+ console.info(p.value)
125
+ console.info(p.max)
126
+ console.info(p)
127
+ }
128
+ }
111
129
112
130
xhr.addEventListener('readystatechange', function(e) {
113
131
if (xhr.readyState == 4 && xhr.status == 200) {
@@ -121,6 +139,8 @@ function uploadFile(file, i) {
121
139
xhr.send(formData)
122
140
}
123
141
</script>
142
+
143
+ </body>
124
144
</html>
125
145
`
126
146
0 commit comments