загрузка картинок по кнопке
Есть страница с превью картинок, при нажатии на кнопку эти картинки грузятся на комп, это работает если картинки и страница находятся в одном домене, но если домены различны то скрипт не срабатывает
`y.onclick = function(){
links.forEach(function(item, i, links) {
var stringOne = item.href;
var FinSumbol = stringOne.lastIndexOf("/");
var FileNames = stringOne.substring(FinSumbol+1);
var VeryFile = FileNames.lastIndexOf(".");
if (VeryFile != -1){
var NewWindow = window.open(item.href);
saveAs(item.href, FileNames);
}
});
}
function saveAs (blob, name, opts) {
var URL = _global.URL || _global.webkitURL
var a = document.createElement('a')
name = name || blob.name || 'download'
a.download = name
a.rel = 'noopener' // tabnabbing
if (typeof blob === 'string') {
// Support regular links
a.href = blob
if (a.origin !== location.origin) {
corsEnabled(a.href)
? download(blob, name, opts)
: click(a, a.target = '_blank')
} else {
click(a)
}
} else {
// Support blobs
a.href = URL.createObjectURL(blob)
setTimeout(function () { URL.revokeObjectURL(a.href) }, 4E4) // 40s
setTimeout(function () { click(a) }, 0)
}
}
function corsEnabled (url) {
var xhr = new XMLHttpRequest()
// use sync to avoid popup blocker
xhr.open('HEAD', url, false)
try {
xhr.send()
} catch (e) {}
return xhr.status >= 200 && xhr.status <= 299
}
function click (node) {
try {
node.dispatchEvent(new MouseEvent('click'))
} catch (e) {
var evt = document.createEvent('MouseEvents')
evt.initMouseEvent('click', true, true, window, 0, 0, 0, 80,
20, false, false, false, false, 0, null)
node.dispatchEvent(evt)
}
}`
В функции SaveAs в строке if (a.origin !== location.origin) { сравнивает домен, и если он отличается то управление переходит в corsEnabled после запроса 'e' = undefined а xhr.status = 0, далее управление переходит в click и на строке 'node.dispatchEvent(new MouseEvent('click'))' выходит из функции. Помогите понять где копать, что не так?