Javascript获取图片的网址

时间:2018-09-25 23:41:34

标签: javascript firefox-addon

我已经搜寻了好几天了(现在很沮丧),试图弄清楚该怎么做。我对开发不是陌生的,但是我对Web开发特别陌生,并且我正在尝试为Firefox开发一个浏览器扩展。

我的问题是,尽管我已经很接近了,但我似乎无法从此处的谷歌搜索问题以及通过Web API搜索中找到确切的方法。

我希望扩展程序在单击时自动下载图像。我从这里的一个问题中找到了这段代码。

var link = document.createElement('a'); // I don't understand the point of this line given what I'm trying to do

link.href = 'images.jpg';
link.download = 'Download.jpg';

// I can work with the two lines above but I don't understand point of the lines below 

document.body.appendChild(link);
link.click();

在查看了MDN文档之后,我知道我需要使用browser.broswerAction.onClicked,但是我无法弄清楚要做什么作为监听器(传递具有信息的监听器) (针对单击的特定图像)在MDN上的browserAction.onClicked上的示例使用tab作为侦听器,显然这对我不起作用,因为它将破坏我要实现的功能的全部目的。

到目前为止,对评论和答案做出回应。感谢您确认我发现的内容与我尝试执行的操作无关。因此,为什么我感到沮丧并提出了问题。

注意:如果您想知道为什么我要这样做。我将其作为一个项目来帮助我复习JS。我不想做其他事情或更少,因为我不喜欢网页设计,我想做一些只能在JS中完成的事情。

更新为此,我冒着被低估的风险,为将来的读者着想,因为我知道Google的感觉,并在这里遇到一个问题几年前问过,但从未回答。那就是我要透露的是我有一个尤里卡的时刻,并解决了我自己的问题。这是代码。在考虑了我的要求之后,它并不能完全解决它,因为它不能完全自动下载,因为它会提示您“保存文件”提示,但是我逐渐意识到,真正的自动下载可能不会出于安全原因是可能的。 (我完全理解)

var imgs = document.getElementsByTagName('IMG')
var tag;
for (var counter =0; counter< imgs.length; counter++)
{

    if (imgs[counter].src == '')
        continue;
    tag = document.createElement('a');
    tag.setAttribute('download', counter + '.jpg'); 
    tag.href = imgs[counter].src;
    document.body.appendChild(tag);
    imgs[counter].onclick = function() 
    { 
    tag.click()
    }
}

0 个答案:

没有答案