01.
(function(f){
if
(typeof exports===
"object"
&&typeof module!==
"undefined"
){module.exports=f()}
else
if
(typeof define===
"function"
&&define.amd){define([],f)}
else
{var g;
if
(typeof window!==
"undefined"
){g=window}
else
if
(typeof global!==
"undefined"
){g=global}
else
if
(typeof self!==
"undefined"
){g=self}
else
{g=
this
}g.multiDownload = f()}})(function(){var define,module,exports;
return
(function e(t,n,r){function s(o,u){
if
(!n[o]){
if
(!t[o]){var a=typeof require==
"function"
&&require;
if
(!u&&a)
return
a(o,!
0
);
if
(i)
return
i(o,!
0
);var f=
new
Error(
"Cannot find module '"
+o+
"'"
);
throw
f.code=
"MODULE_NOT_FOUND"
,f}var l=n[o]={exports:{}};t[o][
0
].call(l.exports,function(e){var n=t[o][
1
][e];
return
s(n?n:e)},l,l.exports,e,t,n,r)}
return
n[o].exports}var i=typeof require==
"function"
&&require;
for
(var o=
0
;o<r.length;o++)s(r[o]);
return
s})({
1
:[function(require,module,exports){
02.
'use strict'
;
03.
04.
function fallback(urls) {
05.
var i =
0
;
06.
07.
(function createIframe() {
08.
var frame = document.createElement(
'iframe'
);
09.
frame.style.display =
'none'
;
10.
frame.src = urls[i++];
11.
document.documentElement.appendChild(frame);
12.
13.
14.
var interval = setInterval(function () {
15.
if
(frame.contentWindow.document.readyState ===
'complete'
|| frame.contentWindow.document.readyState ===
'interactive'
) {
16.
clearInterval(interval);
17.
18.
19.
setTimeout(function () {
20.
frame.parentNode.removeChild(frame);
21.
},
1000
);
22.
23.
if
(i < urls.length) {
24.
createIframe();
25.
}
26.
}
27.
},
100
);
28.
})();
29.
}
30.
31.
function isFirefox() {
32.
33.
return
/Firefox\
34.
}
35.
36.
function sameDomain(url) {
37.
var a = document.createElement(
'a'
);
38.
a.href = url;
39.
40.
return
location.hostname === a.hostname && location.protocol === a.protocol;
41.
}
42.
43.
function download(url) {
44.
var a = document.createElement(
'a'
);
45.
a.download =
''
;
46.
a.href = url;
47.
48.
a.dispatchEvent(
new
MouseEvent(
'click'
));
49.
}
50.
51.
module.exports = function (urls) {
52.
if
(!urls) {
53.
throw
new
Error(
'`urls` required'
);
54.
}
55.
56.
if
(typeof document.createElement(
'a'
).download ===
'undefined'
) {
57.
return
fallback(urls);
58.
}
59.
60.
var delay =
0
;
61.
62.
urls.forEach(function (url) {
63.
64.
if
(isFirefox() && !sameDomain(url)) {
65.
return
setTimeout(download.bind(
null
, url),
100
* ++delay);
66.
}
67.
68.
download(url);
69.
});
70.
}
71.
72.
},{}]},{},[
1
])(
1
)
73.
});