Skip to content

Commit 9f9bd3d

Browse files
author
licong
committed
add upload progress
1 parent 36facc8 commit 9f9bd3d

File tree

1 file changed

+21
-1
lines changed

1 file changed

+21
-1
lines changed

fs.go

+21-1
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,9 @@ import (
2727
)
2828

2929
var tmpText = `
30+
<!DOCTYPE html>
3031
<html>
32+
<head>
3133
<style>
3234
a {
3335
color: #369;
@@ -45,7 +47,13 @@ a {
4547
#fileElem {
4648
display: none;
4749
}
50+
#progress {
51+
width: 100%;
52+
}
4853
</style>
54+
</head>
55+
<body>
56+
<progress id="progress" value="0" max="100"></progress>
4957
<div id="drop-area">
5058
<pre>
5159
{{range $href, $name := . }}
@@ -54,7 +62,6 @@ a {
5462
</pre>
5563
<input type="file" id="fileElem" multiple accept="image/*" onchange="handleFiles(this.files)">
5664
</div>
57-
5865
<script>
5966
// ************************ Drag and drop ***************** //
6067
let dropArea = document.getElementById("drop-area")
@@ -102,12 +109,23 @@ function handleFiles(files) {
102109
}
103110
104111
function uploadFile(file, i) {
112+
let size = file.size
105113
console.info('upload file',window.location.href)
106114
var url = window.location.href
107115
var xhr = new XMLHttpRequest()
108116
var formData = new FormData()
109117
xhr.open('POST', url, true)
110118
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+
}
111129
112130
xhr.addEventListener('readystatechange', function(e) {
113131
if (xhr.readyState == 4 && xhr.status == 200) {
@@ -121,6 +139,8 @@ function uploadFile(file, i) {
121139
xhr.send(formData)
122140
}
123141
</script>
142+
143+
</body>
124144
</html>
125145
`
126146

0 commit comments

Comments
 (0)