【问题标题】:how to get the full path of downloaded image?如何获取下载图像的完整路径?
【发布时间】:2017-03-13 21:26:48
【问题描述】:
<img id='imgt' src='01.jpg' alt='img'>
<input type='text' id='inputnewimg'>  

我用一些 img url 填充输入,例如 - https://i.ytimg.com/vi/QX4j_zHAlw8/maxresdefault.jpg

js

$('#inputnewimg').keypress(function(e) {
if (event.keyCode === 13) {
    e.preventDefault();
    var abc = $(this).val();
    var dl = document.createElement("a");
    dl.href = abc;
    dl.download = true;
    document.body.appendChild(dl);
    dl.click();
}
});

以上代码将图像下载到默认本地文件夹(下载)。
有没有办法动态设置另一个目标文件夹,并获取图像路径和名称,因为我希望新的 img 自动成为#imgt 的来源?

【问题讨论】:

  • 我不这么认为。至少不在现成的网络浏览器中。
  • @KevinB,谢谢。您是否认为通过将图像转换为 base64 和...我不确定...或者使用画布克隆图像,根本不下载?

标签: jquery download


【解决方案1】:

不,很遗憾,你不能。

您唯一能做的就是在下载前更改文件名。

// You can use the code below to match the filename
var srcOfImage = "http://mywebsite.com/images/beautiful_logo.png?even=withParamaters";
var filename = srcOfImage.match(/([\w\d_-]*)\.?[^\\\/]*$/i)[1];

// And then you can simply rename it with a replace
srcOfImage = srcOfImage.replace(filename, "even_better_logo");

console.log(srcOfImage);

// --> This way you keep your file extension
// You could also simply add a prefix or suffix on the filename

【讨论】:

  • 谢谢。您是否认为通过将图像转换为 base64 和...我不确定...或者使用画布克隆图像,根本不下载?
  • 我不确定,但您也可以为此制作一个 Flash 插件。这样做的目的是什么?也许有一个用于文件对话框的 GitHub 库,您可以尝试这样做。
  • 目的是让网络上的任何img作为#imgt的来源,而不仅仅是链接url,而是下载它并获取它的local url并使其成为@987654325的来源@ 一次,自动,一键点击。
  • 恐怕这是不可能的......否则任何网站都可以访问您的个人数据。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-07-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-05-16
  • 1970-01-01
相关资源
最近更新 更多