考虑以下代码:
我在页面上有一个按钮,当我点击它时,它会下载图像。
i==1
问题是,当我点击下载按钮时,它会发送所有请求但只下载一张图片,所以我不知道是什么问题。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Test Download</title>
</head>
<body>
<button onclick="handleDownload()">download</button>
<script>
// Assume these urls are valid and can been downloaded in the
same domain
var urls = ['url1', 'url2', 'url3'];
function handleDownload() {
for (var url of urls) {
var a = document.createElement('a');
a.setAttribute('href', url);
a.setAttribute('download', '-');
a.click();
}
}
</script>
</body>
</html>
执行得太快还是其他原因?
答案 0 :(得分:0)
正如我上面所描述的,我想用它的网址下载一些图片。但它失败了,因为在上一个请求没有连接到服务器之前它无法发送请求。所以我评论说如果我点击这些链接太快,它也会下载最后一个。
最后,我使用window.open(url)
来完成它,而不是使用顶部显示的方式;