比如这个地址
http://shangetu1.map.bdimg.com/it/u=x=52584;y=15017;z=18;v=009;type=sate&fm=46&udt=20141015
如何用js实现自动下载,放在a标签里只能打开新的网页,不能自动下载。
谢谢
比如这个地址
http://shangetu1.map.bdimg.com/it/u=x=52584;y=15017;z=18;v=009;type=sate&fm=46&udt=20141015
如何用js实现自动下载,放在a标签里只能打开新的网页,不能自动下载。
谢谢
事实就是:提供这个图片的后端服务器直接拒绝了你跨域获取这张图的请求。
不信你新建一个 img
标签,修改它的 src
为这个链接,会发现根本加载不了这张图。
所以这不是在网页上用 JS
就能解决的问题。
附一个抄来的图片加载器:
/**
* @const loadImageFromURL - 从 URL 加载图片
* */
const loadImageFromURL = (() => {
const image = new Image();
image.setAttribute('crossOrigin', 'Anonymous');
let resolver = null, errHandler = null;
image.onload = () => {
resolver(image);
};
image.onerror = err => {
errHandler(err);
};
return URL => {
return new Promise((resolve, reject) => {
resolver = resolve;
errHandler = reject;
image.src = URL;
});
}
})();
8 回答4.6k 阅读✓ 已解决
6 回答3.4k 阅读✓ 已解决
5 回答2.8k 阅读✓ 已解决
6 回答2.3k 阅读
5 回答6.3k 阅读✓ 已解决
4 回答2.2k 阅读✓ 已解决
4 回答2.8k 阅读✓ 已解决